diff options
| author | Yukihiro "Matz" Matsumoto <[email protected]> | 2017-02-03 09:29:46 +0900 |
|---|---|---|
| committer | GitHub <[email protected]> | 2017-02-03 09:29:46 +0900 |
| commit | e0323dff8cd0033d0798312acd3799496c6121e2 (patch) | |
| tree | 757c30997e96faa2fafdfff42e80c31739447dca | |
| parent | 6420951463ec9ace9eecb50923dc6a1925a45d31 (diff) | |
| parent | a8ccda5692de601d014a942ee1ea2129388ce84c (diff) | |
| download | mruby-e0323dff8cd0033d0798312acd3799496c6121e2.tar.gz mruby-e0323dff8cd0033d0798312acd3799496c6121e2.zip | |
Merge pull request #3427 from clayton-shopify/fix-mrb-random-init
Fetch arguments earlier in mrb_random_init to avoid a crash.
| -rw-r--r-- | mrbgems/mruby-random/src/random.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/mrbgems/mruby-random/src/random.c b/mrbgems/mruby-random/src/random.c index 587e6c01a..f81d38fe6 100644 --- a/mrbgems/mruby-random/src/random.c +++ b/mrbgems/mruby-random/src/random.c @@ -124,6 +124,8 @@ mrb_random_init(mrb_state *mrb, mrb_value self) mrb_value seed; mt_state *t; + seed = get_opt(mrb); + /* avoid memory leaks */ t = (mt_state*)DATA_PTR(self); if (t) { @@ -134,7 +136,6 @@ mrb_random_init(mrb_state *mrb, mrb_value self) t = (mt_state *)mrb_malloc(mrb, sizeof(mt_state)); t->mti = N + 1; - seed = get_opt(mrb); seed = mrb_random_mt_srand(mrb, t, seed); if (mrb_nil_p(seed)) { t->has_seed = FALSE; |
