From: Stephen Frost Date: Sun, 14 Jul 2013 19:31:23 +0000 (-0400) Subject: pg_receivexlog - Exit on failure to parse X-Git-Tag: REL9_3_RC1~71 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=f5acde9380e164eab10b2dc3281bb1c07f690803;p=postgresql pg_receivexlog - Exit on failure to parse In streamutil.c:GetConnection(), upgrade failure to parse the connection string to an exit(1) instead of simply returning NULL. Most callers already immediately exited, but pg_receivexlog would loop on this case, continually trying to re-parse the connection string (which can't be changed after pg_receivexlog has started). GetConnection() was already expected to exit(1) in some cases (eg: failure to allocate memory or if unable to determine the integer_datetimes flag), so this change shouldn't surprise anyone. Began looking at this due to the Coverity scanner complaining that we were leaking err_msg in this case- no longer an issue since we just exit(1) immediately. --- diff --git a/src/bin/pg_basebackup/streamutil.c b/src/bin/pg_basebackup/streamutil.c index 6891c2c810..dab0e5470c 100644 --- a/src/bin/pg_basebackup/streamutil.c +++ b/src/bin/pg_basebackup/streamutil.c @@ -57,7 +57,7 @@ GetConnection(void) if (conn_opts == NULL) { fprintf(stderr, "%s: %s\n", progname, err_msg); - return NULL; + exit(1); } for (conn_opt = conn_opts; conn_opt->keyword != NULL; conn_opt++)