From 1a1c95404f8842b7327e76e945ef747554e37709 Mon Sep 17 00:00:00 2001 From: usa Date: Thu, 7 Jul 2011 08:56:12 +0000 Subject: * test/testunit/test_parallel.rb (TestParallelWorker#teardown): wait the child process even if the communition pipe is broken. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32436 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- test/testunit/test_parallel.rb | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'test/testunit') diff --git a/test/testunit/test_parallel.rb b/test/testunit/test_parallel.rb index 4c4d14b226..c8f6a9ec18 100644 --- a/test/testunit/test_parallel.rb +++ b/test/testunit/test_parallel.rb @@ -18,11 +18,14 @@ module TestParallel def teardown if @worker_pid && @worker_in begin - @worker_in.puts "quit" + begin + @worker_in.puts "quit" + rescue IOError, Errno::EPIPE + end timeout(2) do Process.waitpid(@worker_pid) end - rescue IOError, Errno::EPIPE, Timeout::Error + rescue Timeout::Error begin Process.kill(:KILL, @worker_pid) rescue Errno::ESRCH -- cgit v1.2.3