From bff41b2b8938f5e3e7d536da6d7a14a1648b4dec Mon Sep 17 00:00:00 2001 From: Heikki Linnakangas Date: Tue, 18 Aug 2020 13:13:09 +0300 Subject: [PATCH] Avoid non-constant format string argument to fprintf(). As Tom Lane pointed out, it could defeat the compiler's printf() format string verification. Backpatch to v12, like that patch that introduced it. Discussion: https://www.postgresql.org/message-id/1069283.1597672779%40sss.pgh.pa.us --- src/bin/pg_basebackup/pg_basebackup.c | 2 +- src/bin/pg_checksums/pg_checksums.c | 2 +- src/bin/pg_rewind/pg_rewind.c | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/bin/pg_basebackup/pg_basebackup.c b/src/bin/pg_basebackup/pg_basebackup.c index 23980c2bf9..1f5e6d2702 100644 --- a/src/bin/pg_basebackup/pg_basebackup.c +++ b/src/bin/pg_basebackup/pg_basebackup.c @@ -860,7 +860,7 @@ progress_report(int tablespacenum, const char *filename, * Stay on the same line if reporting to a terminal and we're not done * yet. */ - fprintf(stderr, (!finished && isatty(fileno(stderr))) ? "\r" : "\n"); + fputc((!finished && isatty(fileno(stderr))) ? '\r' : '\n', stderr); } static int32 diff --git a/src/bin/pg_checksums/pg_checksums.c b/src/bin/pg_checksums/pg_checksums.c index 0696db69bb..ffdc23945c 100644 --- a/src/bin/pg_checksums/pg_checksums.c +++ b/src/bin/pg_checksums/pg_checksums.c @@ -166,7 +166,7 @@ progress_report(bool finished) * Stay on the same line if reporting to a terminal and we're not done * yet. */ - fprintf(stderr, (!finished && isatty(fileno(stderr))) ? "\r" : "\n"); + fputc((!finished && isatty(fileno(stderr))) ? '\r' : '\n', stderr); } static bool diff --git a/src/bin/pg_rewind/pg_rewind.c b/src/bin/pg_rewind/pg_rewind.c index a9aecc7905..23fc749e44 100644 --- a/src/bin/pg_rewind/pg_rewind.c +++ b/src/bin/pg_rewind/pg_rewind.c @@ -572,7 +572,7 @@ progress_report(bool finished) * Stay on the same line if reporting to a terminal and we're not done * yet. */ - fprintf(stderr, (!finished && isatty(fileno(stderr))) ? "\r" : "\n"); + fputc((!finished && isatty(fileno(stderr))) ? '\r' : '\n', stderr); } /*