diff options
| author | Yukihiro "Matz" Matsumoto <[email protected]> | 2017-06-15 13:36:36 +0900 |
|---|---|---|
| committer | Yukihiro "Matz" Matsumoto <[email protected]> | 2017-06-15 13:36:36 +0900 |
| commit | af6041f1d09fc39b65c66ecc87fc63b9caead280 (patch) | |
| tree | cbe843579996becb1a6b6986646e379090911214 | |
| parent | bb1bfaa2fbc693a7185226737022d5d74b97a1de (diff) | |
| download | mruby-af6041f1d09fc39b65c66ecc87fc63b9caead280.tar.gz mruby-af6041f1d09fc39b65c66ecc87fc63b9caead280.zip | |
Ensure size of the stack in OP_CALL.
| -rw-r--r-- | src/vm.c | 3 |
1 files changed, 1 insertions, 2 deletions
@@ -1434,14 +1434,13 @@ RETRY_TRY_BLOCK: pool = irep->pool; syms = irep->syms; ci->nregs = irep->nregs; + stack_extend(mrb, irep->nregs); if (ci->argc < 0) { if (irep->nregs > 3) { - stack_extend(mrb, irep->nregs); stack_clear(regs+3, irep->nregs-3); } } else if (ci->argc+2 < irep->nregs) { - stack_extend(mrb, irep->nregs); stack_clear(regs+ci->argc+2, irep->nregs-ci->argc-2); } if (m->env) { |
