Preserve the current pc before method_missing(); fix #3660

This commit is contained in:
Yukihiro "Matz" Matsumoto
2017-05-25 10:31:48 +09:00
parent 9644ad51b4
commit 9bca887ac4
+3
View File
@@ -1273,6 +1273,7 @@ RETRY_TRY_BLOCK:
else {
args = mrb_ary_new_from_values(mrb, n, regs+a+1);
}
ERR_PC_SET(mrb, pc);
mrb_method_missing(mrb, mid, recv, args);
}
mid = missing;
@@ -1460,6 +1461,7 @@ RETRY_TRY_BLOCK:
else {
args = mrb_ary_new_from_values(mrb, n, regs+a+1);
}
ERR_PC_SET(mrb, pc);
mrb_method_missing(mrb, mid, recv, args);
}
mid = missing;
@@ -1941,6 +1943,7 @@ RETRY_TRY_BLOCK:
else {
args = mrb_ary_new_from_values(mrb, n, regs+a+1);
}
ERR_PC_SET(mrb, pc);
mrb_method_missing(mrb, mid, recv, args);
}
mid = missing;