diff options
author | H.J. Lu <hjl@gcc.gnu.org> | 2009-04-06 16:07:51 -0700 |
---|---|---|
committer | H.J. Lu <hjl@gcc.gnu.org> | 2009-04-06 16:07:51 -0700 |
commit | 4197c13d08d5f8984eab7e6f615ca605c0a6ad13 (patch) | |
tree | 92dbf267a9a5a57ff0a6436365b117a8cad0ad9c /libgfortran/io/unix.c | |
parent | fe0a25ec79f35eb3ae2ecf31e4fd2ba91a6294fa (diff) | |
download | gcc-4197c13d08d5f8984eab7e6f615ca605c0a6ad13.zip gcc-4197c13d08d5f8984eab7e6f615ca605c0a6ad13.tar.gz gcc-4197c13d08d5f8984eab7e6f615ca605c0a6ad13.tar.bz2 |
re PR libfortran/39664 (Revision 145571 breaks stdio)
2009-04-06 H.J. Lu <hongjiu.lu@intel.com>
PR libgfortran/39664
* io/unix.c (raw_close): Don't close STDOUT_FILENO,
STDERR_FILENO nor STDIN_FILENO.
From-SVN: r145636
Diffstat (limited to 'libgfortran/io/unix.c')
-rw-r--r-- | libgfortran/io/unix.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/libgfortran/io/unix.c b/libgfortran/io/unix.c index 0d2650b..4f8cbb5 100644 --- a/libgfortran/io/unix.c +++ b/libgfortran/io/unix.c @@ -344,7 +344,12 @@ raw_close (unix_stream * s) { int retval; - retval = close (s->fd); + if (s->fd != STDOUT_FILENO + && s->fd != STDERR_FILENO + && s->fd != STDIN_FILENO) + retval = close (s->fd); + else + retval = SUCCESS; free_mem (s); return retval; } |