diff options
Diffstat (limited to 'test/ruby')
-rw-r--r-- | test/ruby/test_process.rb | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/test/ruby/test_process.rb b/test/ruby/test_process.rb index 2a13819dca..0738c50b69 100644 --- a/test/ruby/test_process.rb +++ b/test/ruby/test_process.rb @@ -1,6 +1,7 @@ require 'test/unit' require 'tempfile' require 'timeout' +require 'io/wait' require_relative 'envutil' require 'rbconfig' @@ -1946,13 +1947,12 @@ EOS ew.close begin loop do - Timeout.timeout(5) do - runner.readpartial(100) - end + runner.wait_readable(5) + runner.read_nonblock(100) end rescue EOFError => e _, status = Process.wait2(runner.pid) - rescue Timeout::Error => e + rescue IO::WaitReadable => e Process.kill(:INT, runner.pid) raise Marshal.load(er.read.unpack("m")[0]) end |