summaryrefslogtreecommitdiffstats
path: root/ext/stringio
diff options
context:
space:
mode:
authormame <mame@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2008-06-30 13:30:11 +0000
committermame <mame@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2008-06-30 13:30:11 +0000
commite7f7ec8e0531a6168339bf1458d8b456992cff33 (patch)
treef55bdc3cb5809f1b19e5b2450aed5637de62241b /ext/stringio
parent4fc80b5f993902b5376150813442f11ed2da001b (diff)
downloadruby-e7f7ec8e0531a6168339bf1458d8b456992cff33.tar.gz
ruby-e7f7ec8e0531a6168339bf1458d8b456992cff33.tar.xz
ruby-e7f7ec8e0531a6168339bf1458d8b456992cff33.zip
* ext/stringio/stringio.c (strio_getline): fix for nil and "" as
separator. [ruby-dev:34591] git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@17739 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'ext/stringio')
-rw-r--r--ext/stringio/stringio.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/ext/stringio/stringio.c b/ext/stringio/stringio.c
index b9c7eb7f8..db243c4e7 100644
--- a/ext/stringio/stringio.c
+++ b/ext/stringio/stringio.c
@@ -835,7 +835,7 @@ strio_getline(int argc, VALUE *argv, struct StringIO *ptr)
str = tmp;
}
}
- else {
+ else if (!NIL_P(str)) {
StringValue(str);
}
}
@@ -862,7 +862,7 @@ strio_getline(int argc, VALUE *argv, struct StringIO *ptr)
s = p;
while ((p = memchr(p, '\n', e - p)) && (p != e)) {
if (*++p == '\n') {
- e = p;
+ e = p + 1;
break;
}
}