diff options
author | akr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2003-12-28 11:27:42 +0000 |
---|---|---|
committer | akr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2003-12-28 11:27:42 +0000 |
commit | 745ce54b4a46da48ced66c5d90496a0746cdded8 (patch) | |
tree | 684d882a2c450ce029a8e506f8721c6ecd3a98f6 | |
parent | 3c288b427d26d21580f515cb227335eab335ee84 (diff) | |
download | ruby-745ce54b4a46da48ced66c5d90496a0746cdded8.tar.gz |
* ext/stringio/stringio.c (strio_sysread): StringIO.new.sysread didn't
raise EOFError.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5331 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r-- | ChangeLog | 8 | ||||
-rw-r--r-- | ext/stringio/stringio.c | 2 | ||||
-rw-r--r-- | ext/zlib/zlib.c | 2 |
3 files changed, 10 insertions, 2 deletions
@@ -1,3 +1,11 @@ +Sun Dec 28 20:19:11 2003 Tanaka Akira <akr@m17n.org> + + * ext/stringio/stringio.c (strio_sysread): StringIO.new.sysread didn't + raise EOFError. + + * ext/zlib/zlib.c (gzreader_gets): don't increment lineno when + gzfile_read_all returns "". + Sun Dec 28 15:25:08 2003 Dave Thomas <dave@pragprog.com> * class.c,object.c,parse.y,sprintf.c,variable.c: Document classes diff --git a/ext/stringio/stringio.c b/ext/stringio/stringio.c index 8d3275b2b8..46217c7bc8 100644 --- a/ext/stringio/stringio.c +++ b/ext/stringio/stringio.c @@ -908,7 +908,7 @@ strio_sysread(argc, argv, self) VALUE self; { VALUE val = strio_read(argc, argv, self); - if (NIL_P(val)) { + if (NIL_P(val) || RSTRING(val)->len == 0) { rb_eof_error(); } return val; diff --git a/ext/zlib/zlib.c b/ext/zlib/zlib.c index 80b45ad0c9..e22d988406 100644 --- a/ext/zlib/zlib.c +++ b/ext/zlib/zlib.c @@ -2486,7 +2486,7 @@ gzreader_gets(argc, argv, obj) if (NIL_P(rs)) { dst = gzfile_read_all(gz); - if (!NIL_P(dst)) gz->lineno++; + if (RSTRING(dst)->len != 0) gz->lineno++; return dst; } |