[Bug:1.8.7] StringIO#gets with paragraph mode

e$BKNIt$5$se(B
e$B1sF#$G$9!#e(B

1.8.7 e$B$G!"e(BStringIO#gets e$B$Ge(B paragraph
e$BFI$9~$$r$7$?$H$-$NJV$jCM$,e(B
e$BIaDL$Ne(B IO e$B$H0c$$$^$9!#e(B

$ ./ruby -I.ext/i686-linux -rstringio -ve ’
p StringIO.new(“foo\n\n\n\n\nbar”).gets("")

ruby 1.8.7 (2010-01-10 patchlevel 249) [i686-linux]
“foo\n”

e$BIaDL$Ne(B IO e$B$d!"e(Bruby_1_8 e$B$de(B 1.9 e$B$Ne(B stringio
e$B$G$O!“e(B"foo\n\n” e$B$,F@$i$le(B
e$B$^$9!#e(B

$ ./ruby -I.ext/i686-linux -rstringio -e ’
p $<.gets("")

foo

bar
“foo\n\n”

trunk e$B$G$Oe(B r17739 e$B$Ge(B (e$B$I$5$/$5$KJ6$l$Fe(B)
e$BD>$C$F$$$F!"e(Bruby_1_8 e$B$K$Oe(B
r26140 e$B$G%P%C%/%]!<%H$5$l$F$$$^$9!#e(B

  1. 1.8 e$BA4BN$N%P%0$H$7$F!"e(B1.8.7 e$B$K$b%P%C%/%]!<%H$9$ke(B
  2. 1.8.8 e$B$+$i$N;EMMJQ99$H$9$ke(B
  3. 1.8 e$B$O85$N5sF0$,;EMM$H$7$F!"e(B1.8.8 e$B$r%j%P!<%H$9$ke(B

e$B$I$l$,$$$$$H;W$$$^$9$+!)e(B

e$BKNIt$G$9!#e(B

Yusuke ENDOH e$B$5$s$O=q$-$^$7$?e(B:

  1. 1.8 e$BA4BN$N%P%0$H$7$F!"e(B1.8.7 e$B$K$b%P%C%/%]!<%H$9$ke(B
  2. 1.8.8 e$B$+$i$N;EMMJQ99$H$9$ke(B
  3. 1.8 e$B$O85$N5sF0$,;EMM$H$7$F!"e(B1.8.8 e$B$r%j%P!<%H$9$ke(B

e$B$I$l$,$$$$$H;W$$$^$9$+!)e(B

  1. e$B$K$7$h$&$H$*$b$$$^$9!#H?BP0U8+$J$I$"$l$P$*Aa$a$K$*4j$$$7$^$9!#e(B

チケット #2698 が更新されました。 (by Shyouhei U.)

ステータス AssignedからClosedに変更

fixed in r29904