ruby-changes:56874
From: Nobuyoshi <ko1@a...>
Date: Thu, 8 Aug 2019 21:31:22 +0900 (JST)
Subject: [ruby-changes:56874] Nobuyoshi Nakada: 76bd0714cf (master): solve "duplicate :raise event" in require too [Bug #15877]
https://git.ruby-lang.org/ruby.git/commit/?id=76bd0714cf From 76bd0714cf1140ffd64bf564446c76c54f2c4870 Mon Sep 17 00:00:00 2001 From: Nobuyoshi Nakada <nobu@r...> Date: Thu, 8 Aug 2019 21:26:31 +0900 Subject: solve "duplicate :raise event" in require too [Bug #15877] diff --git a/load.c b/load.c index cc5533e..ba84ec0 100644 --- a/load.c +++ b/load.c @@ -1053,7 +1053,6 @@ rb_require_safe(VALUE fname, int safe) https://github.com/ruby/ruby/blob/trunk/load.c#L1053 int result = rb_require_internal(fname, safe); if (result > TAG_RETURN) { - if (result == TAG_RAISE) rb_exc_raise(rb_errinfo()); EC_JUMP_TAG(GET_EC(), result); } if (result < 0) { diff --git a/test/ruby/test_settracefunc.rb b/test/ruby/test_settracefunc.rb index 7d7b672..1138427 100644 --- a/test/ruby/test_settracefunc.rb +++ b/test/ruby/test_settracefunc.rb @@ -1676,10 +1676,16 @@ class TestSetTraceFunc < Test::Unit::TestCase https://github.com/ruby/ruby/blob/trunk/test/ruby/test_settracefunc.rb#L1676 tmpdir = Dir.mktmpdir path = "#{tmpdir}/hola.rb" File.open(path, "w") { |f| f.write("raise") } - TracePoint.new(:raise){|tp| next if !target_thread?; events << [tp.event]}.enable{ + tp = TracePoint.new(:raise) {|tp| events << [tp.event] if target_thread?} + tp.enable{ load path rescue nil } assert_equal [[:raise]], events + events.clear + tp.enable{ + require path rescue nil + } + assert_equal [[:raise]], events ensure FileUtils.rmtree(tmpdir) end -- cgit v0.10.2 -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml/