From be6d55985372027684dee628f483d17ff7f284b7 Mon Sep 17 00:00:00 2001 From: "Yukihiro \"Matz\" Matsumoto" Date: Sat, 10 Jul 2021 14:15:43 +0900 Subject: Update internal methods not to be listed in backtraces. - String#__lines - Array#__ary_eq - Array#__ary_cmp - Hash#__delete - Kernel#__case_eqq - Integer#__coerce_step_counter --- src/array.c | 2 ++ src/hash.c | 1 + src/kernel.c | 1 + src/numeric.c | 1 + 4 files changed, 5 insertions(+) (limited to 'src') diff --git a/src/array.c b/src/array.c index dd669a0b1..bb7190bfd 100644 --- a/src/array.c +++ b/src/array.c @@ -1281,6 +1281,7 @@ mrb_ary_eq(mrb_state *mrb, mrb_value ary1) { mrb_value ary2 = mrb_get_arg1(mrb); + mrb->c->ci->mid = 0; if (mrb_obj_equal(mrb, ary1, ary2)) return mrb_true_value(); if (!mrb_array_p(ary2)) { return mrb_false_value(); @@ -1295,6 +1296,7 @@ mrb_ary_cmp(mrb_state *mrb, mrb_value ary1) { mrb_value ary2 = mrb_get_arg1(mrb); + mrb->c->ci->mid = 0; if (mrb_obj_equal(mrb, ary1, ary2)) return mrb_fixnum_value(0); if (!mrb_array_p(ary2)) { return mrb_nil_value(); diff --git a/src/hash.c b/src/hash.c index 2704be0c4..918722a2b 100644 --- a/src/hash.c +++ b/src/hash.c @@ -1482,6 +1482,7 @@ static mrb_value mrb_hash_delete(mrb_state *mrb, mrb_value self) { mrb_value key = mrb_get_arg1(mrb); + mrb->c->ci->mid = 0; return mrb_hash_delete_key(mrb, self, key); } diff --git a/src/kernel.c b/src/kernel.c index 615b68ac3..4dcf6261b 100644 --- a/src/kernel.c +++ b/src/kernel.c @@ -585,6 +585,7 @@ mrb_obj_ceqq(mrb_state *mrb, mrb_value self) mrb_sym eqq = MRB_OPSYM(eqq); mrb_value ary; + mrb->c->ci->mid = 0; if (mrb_array_p(self)) { ary = self; } diff --git a/src/numeric.c b/src/numeric.c index 306aab803..a01293286 100644 --- a/src/numeric.c +++ b/src/numeric.c @@ -210,6 +210,7 @@ coerce_step_counter(mrb_state *mrb, mrb_value self) mrb_get_args(mrb, "oo", &num, &step); #ifndef MRB_NO_FLOAT + mrb->c->ci->mid = 0; if (mrb_float_p(self) || mrb_float_p(num) || mrb_float_p(step)) { return mrb_to_float(mrb, self); } -- cgit v1.2.3