diff options
Diffstat (limited to 'lib')
-rw-r--r-- | lib/closeout.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/lib/closeout.c b/lib/closeout.c index aee1fcbba..0c78b6e4c 100644 --- a/lib/closeout.c +++ b/lib/closeout.c @@ -94,7 +94,9 @@ close_stdout_status (int status) { int e = ferror (stdout) ? 0 : -1; - if (__fpending (stdout) == 0) + /* If the stream's error bit is clear and there is nothing to flush, + then return right away. */ + if (e && __fpending (stdout) == 0) return; if (fclose (stdout) != 0) |