diff options
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | bootstraptest/test_io.rb | 12 |
2 files changed, 12 insertions, 5 deletions
@@ -1,3 +1,8 @@ +Wed May 5 11:43:10 2010 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * bootstraptest/test_io.rb (megacontent-copy_stream): get rid of + deadlock. + Wed May 5 07:27:14 2010 Nobuyoshi Nakada <nobu@ruby-lang.org> * gc.c (rb_mark_method_entry): renamed. diff --git a/bootstraptest/test_io.rb b/bootstraptest/test_io.rb index d2e02a0659..7304aebc26 100644 --- a/bootstraptest/test_io.rb +++ b/bootstraptest/test_io.rb @@ -78,7 +78,7 @@ assert_normal_exit %q{ ARGF.set_encoding "foo" } -1.times do +10.times do assert_normal_exit %q{ at_exit { p :foo } @@ -90,11 +90,13 @@ assert_normal_exit %q{ r1, w1 = IO.pipe r2, w2 = IO.pipe t1 = Thread.new { w1 << megacontent; w1.close } - t2 = Thread.new { r2.read } + t2 = Thread.new { r2.read; r2.close } IO.copy_stream(r1, w2) rescue nil - r2.close; w2.close - r1.close; w1.close - }, '', ["INT"] or break + w2.close + r1.close + t1.join + t2.join + }, 'megacontent-copy_stream', ["INT"], :timeout => 10 or break end assert_normal_exit %q{ |