summaryrefslogtreecommitdiff
path: root/io.c
diff options
context:
space:
mode:
authormatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2003-05-02 06:41:33 +0000
committermatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2003-05-02 06:41:33 +0000
commit776e2693e738975b2bdbeb1ec43e4993a5520665 (patch)
tree7cfe6e46681a24e91c1cfa1d81a017eff06fcb1c /io.c
parentf701792f6f5d21a3762aec4a23a2b134e52ab94e (diff)
* string.c (rb_str_ljust): now takes optional argument to specify
pad string. [ruby-talk:70482] * string.c (rb_str_rjust): ditto. * string.c (rb_str_center): ditto. * string.c (rb_str_justify): utility function. * eval.c (rb_add_method): call singleton_method_added or method_added for every method definition (after ruby_running). [ruby-talk:70471] * array.c (rb_ary_reverse_bang): Array#reverse! should not return nil even for arrays sized less than 2. * io.c (argf_eof): should not block after reading all argument files. (ruby-bugs-ja PR#449) git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3742 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'io.c')
-rw-r--r--io.c14
1 files changed, 6 insertions, 8 deletions
diff --git a/io.c b/io.c
index 75008a97f7..78b885517f 100644
--- a/io.c
+++ b/io.c
@@ -3756,13 +3756,12 @@ argf_readchar()
static VALUE
argf_eof()
{
- if (!next_argv()) return Qtrue;
- if (next_p == 1) {
- return Qtrue;
- }
- if (rb_io_eof(current_file)) {
- next_p = 1;
- return Qtrue;
+ if (current_file) {
+ if (init_p == 0) return Qtrue;
+ if (rb_io_eof(current_file)) {
+ next_p = 1;
+ return Qtrue;
+ }
}
return Qfalse;
}
@@ -4052,7 +4051,6 @@ Init_IO()
rb_define_singleton_method(argf, "lineno", argf_lineno, 0);
rb_define_singleton_method(argf, "lineno=", argf_set_lineno, 1);
- current_file = rb_stdin;
rb_global_variable(&current_file);
filename = rb_str_new2("-");
rb_define_readonly_variable("$FILENAME", &filename);