From 329de9fa983debc941ebd79f335f2574b72a3694 Mon Sep 17 00:00:00 2001 From: Heikki Linnakangas Date: Mon, 5 May 2014 16:20:12 +0300 Subject: [PATCH] Don't leak memory after connection aborts in pg_recvlogical. Andres Freund, noticed by coverity. --- src/bin/pg_basebackup/pg_recvlogical.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/bin/pg_basebackup/pg_recvlogical.c b/src/bin/pg_basebackup/pg_recvlogical.c index 8141ba31f9..fe902cf969 100644 --- a/src/bin/pg_basebackup/pg_recvlogical.c +++ b/src/bin/pg_basebackup/pg_recvlogical.c @@ -547,9 +547,6 @@ StreamLog(void) } PQclear(res); - if (copybuf != NULL) - PQfreemem(copybuf); - if (outfd != -1 && strcmp(outfile, "-") != 0) { int64 t = feGetCurrentTimestamp(); @@ -563,6 +560,11 @@ StreamLog(void) } outfd = -1; error: + if (copybuf != NULL) + { + PQfreemem(copybuf); + copybuf = NULL; + } destroyPQExpBuffer(query); PQfinish(conn); conn = NULL; -- 2.40.0