diff options
| author | Yukihiro "Matz" Matsumoto <[email protected]> | 2017-04-01 12:42:11 +0900 |
|---|---|---|
| committer | Yukihiro "Matz" Matsumoto <[email protected]> | 2017-04-01 12:42:11 +0900 |
| commit | 195af525fba4dcf8900dbf7e67f0e8e3d62f9911 (patch) | |
| tree | e8321fc90c84ca896663178e24acdc12ec76d508 /src | |
| parent | 9eb2ed08794951d7614d5a9ed8518b2aa370d8b9 (diff) | |
| download | mruby-195af525fba4dcf8900dbf7e67f0e8e3d62f9911.tar.gz mruby-195af525fba4dcf8900dbf7e67f0e8e3d62f9911.zip | |
Expand stack for method_missing; fix #3528
Diffstat (limited to 'src')
| -rw-r--r-- | src/vm.c | 4 |
1 files changed, 4 insertions, 0 deletions
@@ -1227,6 +1227,10 @@ RETRY_TRY_BLOCK: mid = missing; if (n != CALL_MAXARGS) { mrb_value blk = regs[bidx]; + + if (a+2 > irep->nregs) { + stack_extend(mrb, a+2, a+n+1); + } regs[a+1] = mrb_ary_new_from_values(mrb, n, regs+a+1); regs[a+2] = blk; n = CALL_MAXARGS; |
