Bug #7232
closedStringIO#gets(nil, nil) raises TypeError, IO/File#gets do not
Description
Is this a bug?
sasha:rubinius brian$ irb
1.9.3p286 :001 > require 'stringio'
=> true
1.9.3p286 :002 > s = StringIO.new "abc"
=> #StringIO:0x000001008b3d90
1.9.3p286 :003 > s.gets nil, nil
TypeError: no implicit conversion from nil to integer
from (irb):3:in gets' from (irb):3 from /Users/brian/.rvm/rubies/ruby-1.9.3-p286/bin/irb:16:in
'
sasha:rubinius brian$ irb
1.9.3p286 :001 > f = File.open "foobar.txt"
=> #File:foobar.txt
1.9.3p286 :002 > io = IO.new f.fileno
=> #<IO:fd 5>
1.9.3p286 :003 > io.gets nil, nil
=> "ありがとう\n"
1.9.3p286 :004 > f.rewind
=> 0
1.9.3p286 :005 > f.gets nil, nil
=> "ありがとう\n"
Thanks,
Brian
Files
Updated by usa (Usaku NAKAMURA) about 12 years ago
- Category set to ext
- Status changed from Open to Assigned
- Assignee set to nobu (Nobuyoshi Nakada)
- Target version set to 2.0.0
can reproduce with current trunk.
Updated by Glass_saga (Masaki Matsushita) almost 12 years ago
- File patch.diff patch.diff added
How about the patch?
Updated by Anonymous almost 12 years ago
- Status changed from Assigned to Closed
- % Done changed from 0 to 100
This issue was solved with changeset r38630.
Brian, thank you for reporting this issue.
Your contribution to Ruby is greatly appreciated.
May Ruby be with you.
-
ext/stringio/stringio.c (strio_getline): fix not to raise TypeError
when limit is nil.
[Bug #7232] [ruby-core:48531] -
test/stringio/test_stringio.rb: a test for above.