diff --git a/ChangeLog b/ChangeLog index bdf98804d6..892ba8f5a5 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,8 @@ Thu Oct 7 12:55:04 2004 Yukihiro Matsumoto + * io.c (io_read): should freeze buffer before thread context + switch. [ruby-dev:24442] + * pack.c (pack_unpack): string conversion should at the top of the method. [ruby-dev:24439] diff --git a/io.c b/io.c index f188f74c11..52e71f3df2 100644 --- a/io.c +++ b/io.c @@ -1197,8 +1197,8 @@ io_read(argc, argv, io) } if (len == 0) return str; - READ_CHECK(fptr->f); FL_SET(str, FL_FREEZE); + READ_CHECK(fptr->f); n = rb_io_fread(RSTRING(str)->ptr, len, fptr->f); FL_UNSET(str, FL_FREEZE); if (n == 0) {