chiark
/
gitweb
/
~mdw
/
catacomb
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
rand/dsarand.c: Return the old number of passes from `DSARAND_PASSES'.
[catacomb]
/
rand
/
dsarand.c
diff --git
a/rand/dsarand.c
b/rand/dsarand.c
index 70ffaf81a2b3ff43a127f99c5539cd6300023382..a4328aa8e28172aa67190757caa5d64aa7d3875d 100644
(file)
--- a/
rand/dsarand.c
+++ b/
rand/dsarand.c
@@
-282,9
+282,11
@@
static int gmisc(grand *r, unsigned op, ...)
grand *rr = va_arg(ap, grand *);
rr->ops->fill(rr, g->d.p, g->d.sz);
} break;
grand *rr = va_arg(ap, grand *);
rr->ops->fill(rr, g->d.p, g->d.sz);
} break;
- case DSARAND_PASSES:
- g->d.passes = va_arg(ap, unsigned);
- break;
+ case DSARAND_PASSES: {
+ unsigned n = va_arg(ap, unsigned);
+ rc = g->d.passes;
+ if (n > 0) g->d.passes = n;
+ } break;
case DSARAND_SEEDSZ:
rc = g->d.sz;
break;
case DSARAND_SEEDSZ:
rc = g->d.sz;
break;