From: Sami Kerola Date: Sat, 10 Mar 2018 21:20:24 +0000 (+0000) Subject: closestream: remove dummy function __fpending() X-Git-Tag: v2.33-rc1~342 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=b211467f77892f418da091278e47b9fe1baabe4b;p=thirdparty%2Futil-linux.git closestream: remove dummy function __fpending() Exclude __fpending() from build when function is not available. This is more obvious than adding a dummy function and expecting compiler to eliminate it as dead code. Signed-off-by: Sami Kerola --- diff --git a/include/closestream.h b/include/closestream.h index 2dfe113603..b3b257c94a 100644 --- a/include/closestream.h +++ b/include/closestream.h @@ -14,22 +14,20 @@ # define CLOSE_EXIT_CODE EXIT_FAILURE #endif -#ifndef HAVE___FPENDING -static inline int -__fpending(FILE *stream __attribute__((__unused__))) -{ - return 0; -} -#endif - static inline int close_stream(FILE * stream) { +#ifdef HAVE___FPENDING const int some_pending = (__fpending(stream) != 0); +#endif const int prev_fail = (ferror(stream) != 0); const int fclose_fail = (fclose(stream) != 0); - if (prev_fail || (fclose_fail && (some_pending || errno != EBADF))) { + if (prev_fail || (fclose_fail && ( +#ifdef HAVE___FPENDING + some_pending || +#endif + errno != EBADF))) { if (!fclose_fail && !(errno == EPIPE)) errno = 0; return EOF;