diff options
author | akr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2005-07-03 09:37:49 +0000 |
---|---|---|
committer | akr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2005-07-03 09:37:49 +0000 |
commit | 59eaf14cbf3b6529d0bc2939e42402defbc41b94 (patch) | |
tree | 5023b7a9340b4911b6972cf71e58ada31d3d16ff /test/ruby | |
parent | c798dc23aa012053b049b35adc3cf26bbddab5bb (diff) | |
download | ruby-59eaf14cbf3b6529d0bc2939e42402defbc41b94.tar.gz |
avoid some race condition
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8709 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'test/ruby')
-rw-r--r-- | test/ruby/test_signal.rb | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/test/ruby/test_signal.rb b/test/ruby/test_signal.rb index 2401e3211e..6ff33a29aa 100644 --- a/test/ruby/test_signal.rb +++ b/test/ruby/test_signal.rb @@ -27,12 +27,15 @@ class TestSignal < Test::Unit::TestCase def test_exit_action begin r, w = IO.pipe + r0, w0 = IO.pipe pid = fork { - r0, w0 = IO.pipe trap(:USR1, "EXIT") + w0.close + w.syswrite("a") Thread.start { Thread.pass } r0.sysread(4096) } + r.sysread(1) sleep 0.1 assert_nothing_raised("[ruby-dev:26128]") { Process.kill(:USR1, pid) @@ -48,6 +51,8 @@ class TestSignal < Test::Unit::TestCase ensure r.close w.close + r0.close + w0.close end end end |