From 6400a671b8775096f3c312cf04e413c3307b2edb Mon Sep 17 00:00:00 2001 From: nobu Date: Thu, 10 Feb 2005 03:06:43 +0000 Subject: * win32/win32.c (init_stdhandle): assign standard file handles. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7937 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- win32/win32.c | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) (limited to 'win32/win32.c') diff --git a/win32/win32.c b/win32/win32.c index 9de71d7a25..92d00166bd 100644 --- a/win32/win32.c +++ b/win32/win32.c @@ -409,6 +409,8 @@ static void init_env(void) NTLoginName[len] = '\0'; } +static void init_stdhandle(); + // // Initialization stuff // @@ -431,6 +433,8 @@ NtInitialize(int *argc, char ***argv) init_env(); + init_stdhandle(); + // Initialize Winsock StartSockets(); } @@ -1647,11 +1651,29 @@ rb_w32_open_osfhandle(long osfhandle, int flags) } return fh; /* return handle */ } + +static void +init_stdhandle() +{ + if (fileno(stdin) < 0) { + stdin->_file = 0; + } + if (fileno(stdout) < 0) { + stdout->_file = 1; + } + if (fileno(stderr) < 0) { + stderr->_file = 2; + } +} #else #define _set_osfhnd(fh, osfh) (void)((fh), (osfh)) #define _set_osflags(fh, flags) (void)((fh), (flags)) +static void +init_stdhandle() +{ +} #endif #ifdef __BORLANDC__ -- cgit v1.2.3