diff options
author | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2004-11-16 07:21:21 +0000 |
---|---|---|
committer | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2004-11-16 07:21:21 +0000 |
commit | 2d28e9d55b124b895d34fe41dbe6d362c2a88327 (patch) | |
tree | 91020d139527c8d24bf36116aeb7e21ed427ae44 | |
parent | b93479b8d9b8f0f95844d8e53ad954445177af00 (diff) | |
download | ruby-2d28e9d55b124b895d34fe41dbe6d362c2a88327.tar.gz |
* ext/stringio/stringio.c (strio_read): position was ignored when a
buffer was passed. http://www.yo.rim.or.jp/~nov/d/?date=20041116#p03
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7281 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | ext/stringio/stringio.c | 2 |
2 files changed, 6 insertions, 1 deletions
@@ -1,3 +1,8 @@ +Tue Nov 16 16:20:45 2004 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * ext/stringio/stringio.c (strio_read): position was ignored when a + buffer was passed. http://www.yo.rim.or.jp/~nov/d/?date=20041116#p03 + Tue Nov 16 13:35:54 2004 NAKAMURA Usaku <usa@ruby-lang.org> * lib/test/unit/autorunner.rb (Test::Unit::AutoRunner::options): add diff --git a/ext/stringio/stringio.c b/ext/stringio/stringio.c index 71e14bd85a..89d2f06290 100644 --- a/ext/stringio/stringio.c +++ b/ext/stringio/stringio.c @@ -889,7 +889,7 @@ strio_read(argc, argv, self) long rest = RSTRING(ptr->string)->len - ptr->pos; if (len > rest) len = rest; rb_str_resize(str, len); - MEMCPY(RSTRING(str)->ptr, RSTRING(ptr->string)->ptr, char, len); + MEMCPY(RSTRING(str)->ptr, RSTRING(ptr->string)->ptr + ptr->pos, char, len); } if (NIL_P(str)) { if (!(ptr->flags & STRIO_EOF)) str = rb_str_new(0, 0); |