summaryrefslogtreecommitdiff
path: root/io.c
diff options
context:
space:
mode:
Diffstat (limited to 'io.c')
-rw-r--r--io.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/io.c b/io.c
index 92dc006e33..99872dee1e 100644
--- a/io.c
+++ b/io.c
@@ -8406,11 +8406,10 @@ argf_each_line(int argc, VALUE *argv, VALUE argf)
{
RETURN_ENUMERATOR(argf, argc, argv);
for (;;) {
- if (!next_argv()) return Qnil;
+ if (!next_argv()) return argf;
rb_block_call(ARGF.current_file, rb_intern("each_line"), argc, argv, rb_yield, 0);
ARGF.next_p = 1;
}
- return argf;
}
static VALUE
@@ -8418,7 +8417,7 @@ argf_each_byte(VALUE argf)
{
RETURN_ENUMERATOR(argf, 0, 0);
for (;;) {
- if (!next_argv()) return Qnil;
+ if (!next_argv()) return argf;
rb_block_call(ARGF.current_file, rb_intern("each_byte"), 0, 0, rb_yield, 0);
ARGF.next_p = 1;
}
@@ -8429,7 +8428,7 @@ argf_each_char(VALUE argf)
{
RETURN_ENUMERATOR(argf, 0, 0);
for (;;) {
- if (!next_argv()) return Qnil;
+ if (!next_argv()) return argf;
rb_block_call(ARGF.current_file, rb_intern("each_char"), 0, 0, rb_yield, 0);
ARGF.next_p = 1;
}