ruby-changes:69456
From: Koichi <ko1@a...>
Date: Tue, 26 Oct 2021 17:07:19 +0900 (JST)
Subject: [ruby-changes:69456] d1424f7f7e (master): Revert "check other IO#close calls"
https://git.ruby-lang.org/ruby.git/commit/?id=d1424f7f7e From d1424f7f7e0903c4b9c676edda02ecddd4333fef Mon Sep 17 00:00:00 2001 From: Koichi Sasada <ko1@a...> Date: Tue, 26 Oct 2021 11:55:36 +0900 Subject: Revert "check other IO#close calls" This reverts commit a1c4cab11d613d7df037a81a770ee44a23a2e9be. --- tool/lib/test/unit/parallel.rb | 37 +++++++++++++++++-------------------- 1 file changed, 17 insertions(+), 20 deletions(-) diff --git a/tool/lib/test/unit/parallel.rb b/tool/lib/test/unit/parallel.rb index 5fdf3628607..544239921cb 100644 --- a/tool/lib/test/unit/parallel.rb +++ b/tool/lib/test/unit/parallel.rb @@ -35,20 +35,6 @@ module Test https://github.com/ruby/ruby/blob/trunk/tool/lib/test/unit/parallel.rb#L35 _report "start", Marshal.dump([inst.class.name, inst.__name__]) end - def close_io io, suite - # To figure out which suite raises EBADF error. - begin - io.close if io && !io.closed? - rescue Exception => e - STDERR.puts <<~EOS - !!!!!!!!!!!!!!!!!!!!!!!!!!!! - !! #{e} at #{suite.name} - !!!!!!!!!!!!!!!!!!!!!!!!!!!! - EOS - raise - end - end - def _run_suite(suite, type) # :nodoc: @partial_report = [] orig_testout = Test::Unit::Runner.output @@ -79,15 +65,13 @@ module Test https://github.com/ruby/ruby/blob/trunk/tool/lib/test/unit/parallel.rb#L65 $stdin = orig_stdin $stdout = orig_stdout - close_io o, suite - + o.close begin th.join rescue IOError raise unless /stream closed|closed stream/ =~ $!.message end - - close_io i, suite + i.close result << @partial_report @partial_report = nil @@ -101,8 +85,21 @@ module Test https://github.com/ruby/ruby/blob/trunk/tool/lib/test/unit/parallel.rb#L85 Test::Unit::Runner.output = orig_stdout $stdin = orig_stdin if orig_stdin $stdout = orig_stdout if orig_stdout - close_io o, suite - close_io i, suite + + # To figure out which suite raises EBADF error. + begin + o.close if o && !o.closed? + rescue Exception => e + STDERR.puts "#{e} at #{suite.name} (o)" + raise + end + + begin + i.close if i && !i.closed? + rescue Exception => e + STDERR.puts "#{e} at #{suite.name} (i)" + raise + end end def run(args = []) # :nodoc: -- cgit v1.2.1 -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml/