This is the mail archive of the fortran@gcc.gnu.org mailing list for the GNU Fortran project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
STDOUT_FILENO, STDERR_FILENO and STDIN_FILENO are handled by C library. libgfortran shouldn't close them for C library. Before revision 145571, fd_close handled them correctly. OK for trunk?
Thanks.
H.J. --- 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.
Index: libgfortran/io/unix.c
===================================================================
--- libgfortran/io/unix.c (revision 145571)
+++ libgfortran/io/unix.c (working copy)
@@ -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;
}
-- Janne Blomqvist
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |