Bug #5954
IO.read_nonblock on IO.pipe generates Errno::EBADF (MinGW)
| Status: | Assigned | Start date: | 02/01/2012 | |
|---|---|---|---|---|
| Priority: | Normal | Due date: | ||
| Assignee: | % Done: | 0% |
||
| Category: | - | |||
| Target version: | 1.9.3 | |||
| ruby -v: | 1.9.3-p0 i386-mingw32 and 2.0.0dev |
Description
Originally posted in [ruby-core:42103]:
The following example seems not to work under Windows:
=begin
r, w = IO.pipe
w.write "awesome" * 10
puts r.read_nonblock(8)
r.close
w.close
=end
C:\Users\Luis>ruby -v t.rb
ruby 1.9.3p0 (2011-10-30) [i386-mingw32]
t.rb:5:in `read_nonblock': Bad file descriptor (Errno::EBADF)
from t.rb:5:in `<main>'
What is not clear is that using StringIO works:
=begin
require "stringio"
b = StringIO.new
b.write "awesome" * 10
b.rewind
puts b.read_nonblock(8)
b.close
=end
C:\Users\Luis>ruby -v t2.rb
ruby 1.9.3p0 (2011-10-30) [i386-mingw32]
awesomea
Perhaps pipes are not open properly? Is this supported under Windows?
History
Updated by shyouhei (Shyouhei Urabe) 2 months ago
- Status changed from Open to Assigned