summaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
authorYukihiro "Matz" Matsumoto <[email protected]>2017-12-16 09:17:07 +0900
committerYukihiro "Matz" Matsumoto <[email protected]>2017-12-16 09:17:07 +0900
commit03614ed9189b771a1c3414169e66faae1c1c1b74 (patch)
tree382deabc9dff8a979877e34355b5685d561e5175 /src
parent05129ab9b3934ebc26a11f28d7d995793ea8baa5 (diff)
downloadmruby-03614ed9189b771a1c3414169e66faae1c1c1b74.tar.gz
mruby-03614ed9189b771a1c3414169e66faae1c1c1b74.zip
Need to clear exception handler on `return`; fix #3898
Diffstat (limited to 'src')
-rw-r--r--src/vm.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/vm.c b/src/vm.c
index 464e9042d..c415089aa 100644
--- a/src/vm.c
+++ b/src/vm.c
@@ -2071,6 +2071,7 @@ RETRY_TRY_BLOCK:
while (ci < mrb->c->ci) {
cipop(mrb);
}
+ ci[0].ridx = ci[-1].ridx;
while (mrb->c->eidx > ci->epos) {
ecall_adjust();
}