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 | c61dd961dd01e6496fb8cb90c0af67ae0fdcebca (patch) | |
tree | d8b37bab791f40276dea2d899403875522607141 /test | |
parent | 3e0a75c089118bcd640d07afca605f0b823eed0f (diff) |
avoid some race condition
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@8709 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'test')
-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 |