From 7010ed0f0a414b1367e4620a504f106759341cc2 Mon Sep 17 00:00:00 2001 From: "Yukihiro \"Matz\" Matsumoto" Date: Thu, 14 Oct 2021 22:47:19 +0900 Subject: vm.c: need to ensure the stack size is sufficient. Need to add `n` because the stack will be shifted in the `mrb_funcall`. --- src/vm.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/vm.c') diff --git a/src/vm.c b/src/vm.c index 1c59d4406..ba60429ab 100644 --- a/src/vm.c +++ b/src/vm.c @@ -478,7 +478,7 @@ mrb_funcall_with_block(mrb_state *mrb, mrb_value self, mrb_sym mid, mrb_int argc } c = mrb_class(mrb, self); m = mrb_method_search_vm(mrb, &c, mid); - mrb_stack_extend(mrb, argc + 3); + mrb_stack_extend(mrb, n + argc + 3); if (MRB_METHOD_UNDEF_P(m) || argc >= 15) { mrb_value args = mrb_ary_new_from_values(mrb, argc, argv); -- cgit v1.2.3