From a3efca16a12044b46f0e305ddcacfe6d412afcca Mon Sep 17 00:00:00 2001 From: akr Date: Sun, 30 Oct 2011 13:34:04 +0000 Subject: * ruby.c (fill_standard_fds): use fstat() instead of fcntl(F_GETFD) for MinGW. reported by Luis Lavena. [ruby-core:40526] [Bug #5516] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33573 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ruby.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'ruby.c') diff --git a/ruby.c b/ruby.c index 3371772671..944f214560 100644 --- a/ruby.c +++ b/ruby.c @@ -1819,9 +1819,10 @@ static void fill_standard_fds(void) { int f0, f1, f2, fds[2]; - f0 = fcntl(0, F_GETFD) == -1 && errno == EBADF; - f1 = fcntl(1, F_GETFD) == -1 && errno == EBADF; - f2 = fcntl(2, F_GETFD) == -1 && errno == EBADF; + struct stat buf; + f0 = fstat(0, &buf) == -1 && errno == EBADF; + f1 = fstat(1, &buf) == -1 && errno == EBADF; + f2 = fstat(2, &buf) == -1 && errno == EBADF; if (f0) { if (pipe(fds) == 0) { close(fds[1]); -- cgit v1.2.3