# Cygwin build of Ruby 1.9.1p0 fails test\_io.rb test 7

**URL:** <https://www.ruby-forum.com/t/cygwin-build-of-ruby-1-9-1p0-fails-test-io-rb-test-7/165692>\
**Category:** Ruby\
**Created:** [April 16, 2009, 2:06pm UTC](https://www.ruby-forum.com/t/cygwin-build-of-ruby-1-9-1p0-fails-test-io-rb-test-7/165692 "2009-04-16T14:06:13Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![Frank\_JSLhota](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/f/8e7dd6/32.png) [@Frank\_JSLhota](https://www.ruby-forum.com/u/Frank_JSLhota)\
**Post date:** [April 16, 2009, 2:06pm UTC](https://www.ruby-forum.com/t/cygwin-build-of-ruby-1-9-1p0-fails-test-io-rb-test-7/165692/1 "2009-04-16T14:06:13Z")

</div>

I downloaded the 1.9.1p0 Ruby source code and built it using the  
Cygwin tools. I ran the bootstrap test on this build. The Cygwin build  
passed every test outside of the file bootstrap/test\_io.rb. This build  
hung on the second test in test\_io.rb. This is not terribly  
surprising, given that others have reported errors with this test on  
other platforms. But after taking out test 2, I found that the Cygwin  
build hung on test 7 in the same file:

50.times do  
assert\_normal\_exit %q{  
at\_exit { p :foo }

```
megacontent = "abc" * 12345678
#File.open("megasrc", "w") {|f| f << megacontent }

Thread.new { sleep rand*0.2; Process.kill(:INT, $$) }

r1, w1 = IO.pipe
r2, w2 = IO.pipe
t1 = Thread.new { w1 << megacontent; w1.close }
t2 = Thread.new { r2.read }
IO.copy_stream(r1, w2) rescue nil
r2.close; w2.close
r1.close; w1.close

```

}, ‘’, [“INT”] or break  
end

Has anyone had any problems with this test? Is there a patch that  
would allow Ruby 1.9.1 on Cygwin to pass test 2 and/or test 7 in  
test\_io.rb?
