diff options
Diffstat (limited to 'libio/iofclose.c')
-rw-r--r-- | libio/iofclose.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/libio/iofclose.c b/libio/iofclose.c index 9d537377a4..77c7b50088 100644 --- a/libio/iofclose.c +++ b/libio/iofclose.c @@ -35,19 +35,19 @@ _IO_fclose (fp) CHECK_FILE(fp, EOF); - __libc_cleanup_region_start (&_IO_funlockfile, fp); + __libc_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp); _IO_flockfile (fp); if (fp->_IO_file_flags & _IO_IS_FILEBUF) status = _IO_file_close_it (fp); else status = fp->_flags & _IO_ERR_SEEN ? -1 : 0; _IO_FINISH (fp); + __libc_cleanup_region_end (1); if (fp != _IO_stdin && fp != _IO_stdout && fp != _IO_stderr) { fp->_IO_file_flags = 0; free(fp); } - __libc_cleanup_region_end (1); return status; } |