diff options
author | akr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2008-05-04 03:59:01 +0000 |
---|---|---|
committer | akr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2008-05-04 03:59:01 +0000 |
commit | bb16543ac77a4372877d0f9f3809c9400fe4cb70 (patch) | |
tree | 9cbc740103a88a3dcd0491106460b452dcc7c318 /string.c | |
parent | cf7be6e0c3acec6fb1b6a5c1128bc077b4d11678 (diff) | |
download | ruby-bb16543ac77a4372877d0f9f3809c9400fe4cb70.tar.gz ruby-bb16543ac77a4372877d0f9f3809c9400fe4cb70.tar.xz ruby-bb16543ac77a4372877d0f9f3809c9400fe4cb70.zip |
* string.c (rb_str_each_line): return original string.
git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@16284 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'string.c')
-rw-r--r-- | string.c | 5 |
1 files changed, 3 insertions, 2 deletions
@@ -5045,6 +5045,7 @@ rb_str_each_line(int argc, VALUE *argv, VALUE str) long len, rslen; VALUE line; int n; + VALUE orig = str; if (argc == 0) { rs = rb_rs; @@ -5055,7 +5056,7 @@ rb_str_each_line(int argc, VALUE *argv, VALUE str) RETURN_ENUMERATOR(str, argc, argv); if (NIL_P(rs)) { rb_yield(str); - return str; + return orig; } str = rb_str_new4(str); ptr = p = s = RSTRING_PTR(str); @@ -5124,7 +5125,7 @@ rb_str_each_line(int argc, VALUE *argv, VALUE str) rb_yield(line); } - return str; + return orig; } |