summaryrefslogtreecommitdiff
path: root/contrib/pg_upgrade/util.c
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/pg_upgrade/util.c')
-rw-r--r--contrib/pg_upgrade/util.c12
1 files changed, 10 insertions, 2 deletions
diff --git a/contrib/pg_upgrade/util.c b/contrib/pg_upgrade/util.c
index 2c0dfd65e4e..d879e762fa2 100644
--- a/contrib/pg_upgrade/util.c
+++ b/contrib/pg_upgrade/util.c
@@ -81,10 +81,18 @@ pg_log(eLogType type, char *fmt,...)
/* fopen() on log_opts.internal might have failed, so check it */
if ((type != PG_VERBOSE || log_opts.verbose) && log_opts.internal != NULL)
{
- fwrite(message, strlen(message), 1, log_opts.internal);
+ /*
+ * There's nothing much we can do about it if fwrite fails, but some
+ * platforms declare fwrite with warn_unused_result. Do a little
+ * dance with casting to void to shut up the compiler in such cases.
+ */
+ size_t rc;
+
+ rc = fwrite(message, strlen(message), 1, log_opts.internal);
/* if we are using OVERWRITE_MESSAGE, add newline to log file */
if (strchr(message, '\r') != NULL)
- fwrite("\n", 1, 1, log_opts.internal);
+ rc = fwrite("\n", 1, 1, log_opts.internal);
+ (void) rc;
fflush(log_opts.internal);
}