Commit d368a301 authored by Stephen Frost's avatar Stephen Frost

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.
parent 234e4cf6
...@@ -57,7 +57,7 @@ GetConnection(void) ...@@ -57,7 +57,7 @@ GetConnection(void)
if (conn_opts == NULL) if (conn_opts == NULL)
{ {
fprintf(stderr, "%s: %s\n", progname, err_msg); fprintf(stderr, "%s: %s\n", progname, err_msg);
return NULL; exit(1);
} }
for (conn_opt = conn_opts; conn_opt->keyword != NULL; conn_opt++) for (conn_opt = conn_opts; conn_opt->keyword != NULL; conn_opt++)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment