From: Jim Meyering Date: Thu, 20 Dec 2001 10:01:25 +0000 (+0000) Subject: (close_stdout_status): If ferror (stdout), do X-Git-Tag: FILEUTILS-4_1_5~30 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=8d83abaf8938587604a656932bcd7e290293d879;p=thirdparty%2Fcoreutils.git (close_stdout_status): If ferror (stdout), do not silently exit merely because the output buffer happens to have nothing pending. --- diff --git a/lib/closeout.c b/lib/closeout.c index aee1fcbbaf..0c78b6e4c3 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)