From: Francois-Xavier Coudert Date: Mon, 30 May 2005 07:38:36 +0000 (+0200) Subject: re PR libfortran/20179 (cannot mix C and Fortran I/O) X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=12e59662e3a2bd79854bbf4fa84b30182196d403;p=gcc.git re PR libfortran/20179 (cannot mix C and Fortran I/O) PR libfortran/20179 * io/unix.c (fd_close): Add test so that we don't close() stdout and stderr. From-SVN: r100353 --- diff --git a/libgfortran/ChangeLog b/libgfortran/ChangeLog index e816c31c70d..28f32b1a57b 100644 --- a/libgfortran/ChangeLog +++ b/libgfortran/ChangeLog @@ -1,3 +1,9 @@ +2005-05-23 Francois-Xavier Coudert + + PR libfortran/20179 + * io/unix.c (fd_close): Add test so that we don't close() + stdout and stderr. + 2005-05-29 Francois-Xavier Coudert PR libfortran/20006 diff --git a/libgfortran/io/unix.c b/libgfortran/io/unix.c index 462d48df19a..f82ffa73041 100644 --- a/libgfortran/io/unix.c +++ b/libgfortran/io/unix.c @@ -542,8 +542,11 @@ fd_close (unix_stream * s) if (s->buffer != NULL && s->buffer != s->small_buffer) free_mem (s->buffer); - if (close (s->fd) < 0) - return FAILURE; + if (s->fd != STDOUT_FILENO && s->fd != STDERR_FILENO) + { + if (close (s->fd) < 0) + return FAILURE; + } free_mem (s);