From eee93bc9330cb069abb679a0a0d48a49b10f6a4e Mon Sep 17 00:00:00 2001 From: Yusuke Endoh Date: Mon, 21 Dec 2020 11:33:22 +0900 Subject: eval_error.c: fix off-by-one error for --backtrace-limit https://bugs.ruby-lang.org/issues/17413 --- eval_error.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'eval_error.c') diff --git a/eval_error.c b/eval_error.c index 1e6579c8a0..841275eed0 100644 --- a/eval_error.c +++ b/eval_error.c @@ -253,9 +253,9 @@ print_backtrace(const VALUE eclass, const VALUE errat, const VALUE str, int reve } // skip for explicit limit - if (rb_backtrace_length_limit >= 0 && len > rb_backtrace_length_limit + 1) { + if (rb_backtrace_length_limit >= 0 && len > rb_backtrace_length_limit + 2) { skip_start = rb_backtrace_length_limit + 1; - skip_len = len - rb_backtrace_length_limit; + skip_len = len - skip_start; } for (i = 1; i < len; i++) { -- cgit v1.2.3