summaryrefslogtreecommitdiff
path: root/src/modules/sparkler/particle.h
diff options
context:
space:
mode:
authorVito Caputo <vcaputo@pengaru.com>2022-07-20 21:06:31 -0700
committerVito Caputo <vcaputo@pengaru.com>2022-07-20 21:06:31 -0700
commitb38db01c835fa222aa11ace3a2d84095fe2c3f83 (patch)
tree18464eac0c46a1e8a82f96faadc370066d8bf61c /src/modules/sparkler/particle.h
parentb68ec04f86f83ba3d7926ffafc1d8a6456e72c05 (diff)
modules/sparkler: s/rand/rand_r/ and wire up seed
This is a little contorted but not too bad. The input to particles_new() is just a const conf struct, so instead of passing in the seed value for particles_t to contain, a pointer to where the seed lives is passed in via the conf. This requires the caller to persist a seed somewhere outside the particles instance, but at least in rototiller we already have that conveniently in til_module_context_t.
Diffstat (limited to 'src/modules/sparkler/particle.h')
-rw-r--r--src/modules/sparkler/particle.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/modules/sparkler/particle.h b/src/modules/sparkler/particle.h
index 6a5bf73..a7c4138 100644
--- a/src/modules/sparkler/particle.h
+++ b/src/modules/sparkler/particle.h
@@ -43,7 +43,7 @@ struct particle_t {
//#define rand_within_range(_min, _max) ((rand() % (_max - _min)) + _min)
// the style of random number generator used by c libraries has less entropy in the lower bits meaning one shouldn't just use modulo, while this is slower, the results do seem a little different.
-#define rand_within_range(_min, _max) (int)(((float)_min) + ((float)rand() / (float)RAND_MAX) * (_max - _min))
+#define rand_within_range(_seedp, _min, _max) (int)(((float)_min) + ((float)rand_r(_seedp) / (float)RAND_MAX) * (_max - _min))
#define INHERIT_OPS NULL
#define INHERIT_PROPS NULL
© All Rights Reserved