From b56e5c6b9425a19c04d4e59410463155ea9db30c Mon Sep 17 00:00:00 2001 From: Nobuyoshi Nakada Date: Sun, 13 Aug 2023 01:00:16 +0900 Subject: Fix the precedence of `--backtrace-limit` option In general, if the same option specifying a single value is given multiple times at the same level, the last one overrides the earlier ones, unless prohibited. --- test/ruby/test_rubyoptions.rb | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'test/ruby') diff --git a/test/ruby/test_rubyoptions.rb b/test/ruby/test_rubyoptions.rb index 7510505062..3d98cd6f4e 100644 --- a/test/ruby/test_rubyoptions.rb +++ b/test/ruby/test_rubyoptions.rb @@ -89,6 +89,10 @@ class TestRubyOptions < Test::Unit::TestCase assert_in_out_err([env], "p Thread::Backtrace.limit", ['5'], []) assert_in_out_err([env, "--backtrace-limit=1"], "p Thread::Backtrace.limit", ['1'], []) assert_in_out_err([env, "--backtrace-limit=-1"], "p Thread::Backtrace.limit", ['-1'], []) + assert_in_out_err([env, "--backtrace-limit=3", "--backtrace-limit=1"], + "p Thread::Backtrace.limit", ['1'], []) + assert_in_out_err([{"RUBYOPT" => "--backtrace-limit=5 --backtrace-limit=3"}], + "p Thread::Backtrace.limit", ['3'], []) long_max = RbConfig::LIMITS["LONG_MAX"] assert_in_out_err(%W(--backtrace-limit=#{long_max}), "p Thread::Backtrace.limit", ["#{long_max}"], []) -- cgit v1.2.3