diff --git a/ChangeLog b/ChangeLog index c5243aae9d..1ab47f768d 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +Sun Oct 26 13:30:28 2008 Nobuyoshi Nakada + + * io.c (read_all): use the given buffer to read when needs readconv. + based on the patch by wanabe at + [ruby-dev:36931]. + Sun Oct 26 07:57:35 2008 Eric Hodel * lib/rubygems*: Update to RubyGems 1.3.1 r1909. diff --git a/io.c b/io.c index bfeefef432..125180b925 100644 --- a/io.c +++ b/io.c @@ -1556,7 +1556,7 @@ read_all(rb_io_t *fptr, long siz, VALUE str) int cr; if (NEED_READCONV(fptr)) { - VALUE str = rb_str_new(NULL, 0); + if (!NIL_P(str)) rb_str_set_len(str, 0); make_readconv(fptr); while (1) { if (fptr->cbuf_len) {