From d9c8626bb16109d3898acfa6aa1110ddb480e753 Mon Sep 17 00:00:00 2001 From: "Yukihiro \"Matz\" Matsumoto" Date: Thu, 27 May 2021 21:48:26 +0900 Subject: kernel.c: clear `mid` for `raise` and `method_missing` Method names need not to be printed in backtrace history. --- src/kernel.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/kernel.c b/src/kernel.c index 719f92b7e..615b68ac3 100644 --- a/src/kernel.c +++ b/src/kernel.c @@ -423,8 +423,8 @@ mrb_f_raise(mrb_state *mrb, mrb_value self) mrb_value a[2], exc; mrb_int argc; - argc = mrb_get_args(mrb, "|oo", &a[0], &a[1]); + mrb->c->ci->mid = 0; switch (argc) { case 0: mrb_raise(mrb, E_RUNTIME_ERROR, ""); @@ -527,6 +527,7 @@ mrb_obj_missing(mrb_state *mrb, mrb_value mod) const mrb_value *a; mrb_int alen; + mrb->c->ci->mid = 0; mrb_get_args(mrb, "n*!", &name, &a, &alen); mrb_method_missing(mrb, name, mod, mrb_ary_new_from_values(mrb, alen, a)); /* not reached */ -- cgit v1.2.3