summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--io.c6
2 files changed, 11 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 49d2292b30..e687418c2b 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+Tue Jan 13 18:19:49 2009 NAKAMURA Usaku <usa@ruby-lang.org>
+
+ * io.c (rb_io_initialize): workaround for Windows. [ruby-dev:37686]
+ (also see [ruby-dev:37721])
+
Tue Jan 13 17:29:02 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* enc/trans/make_transdb.rb (converters): should not depend on the
diff --git a/io.c b/io.c
index 46136d7ee7..5e50b0981d 100644
--- a/io.c
+++ b/io.c
@@ -5963,6 +5963,12 @@ rb_io_initialize(int argc, VALUE *argv, VALUE io)
fp->encs = convconfig;
clear_codeconv(fp);
io_check_tty(fp);
+ if (fileno(stdin) == fd)
+ fp->stdio_file = stdin;
+ else if (fileno(stdout) == fd)
+ fp->stdio_file = stdout;
+ else if (fileno(stderr) == fd)
+ fp->stdio_file = stderr;
return io;
}