Unshare popped TT_ENV objects.

This commit is contained in:
Yukihiro "Matz" Matsumoto
2017-03-04 22:45:44 +09:00
parent 3b40a2f6b5
commit 4f43db862a
+6
View File
@@ -1676,6 +1676,9 @@ RETRY_TRY_BLOCK:
ce = mrb->c->cibase + e->cioff;
while (--ci > ce) {
if (ci->env) {
mrb_env_unshare(mrb, ci->env);
}
if (ci->acc < 0) {
localjump_error(mrb, LOCALJUMP_ERROR_RETURN);
goto L_RAISE;
@@ -1727,6 +1730,9 @@ RETRY_TRY_BLOCK:
mrb->c->ci = ci;
break;
}
if (ci->env) {
mrb_env_unshare(mrb, ci->env);
}
ci--;
}
break;