From 366d2a3d8808ad92436a830c32e73ce17affe5b6 Mon Sep 17 00:00:00 2001
From: Peter Eisentraut <peter_e@gmx.net>
Date: Mon, 23 Jan 2017 08:28:39 -0500
Subject: [PATCH] pg_dump: Fix minor memory leak

Missing a destroyPQExpBuffer() in the early exit branch.  The early
exits aren't really necessary.  Most similar functions just proceed
running the rest of the code zero times and clean up at the end.
---
 src/bin/pg_dump/pg_dump.c | 18 ------------------
 1 file changed, 18 deletions(-)

diff --git a/src/bin/pg_dump/pg_dump.c b/src/bin/pg_dump/pg_dump.c
index 6cbefac250f..049c9cdfd7e 100644
--- a/src/bin/pg_dump/pg_dump.c
+++ b/src/bin/pg_dump/pg_dump.c
@@ -3360,15 +3360,6 @@ getPublications(Archive *fout)
 
 	ntups = PQntuples(res);
 
-	if (ntups == 0)
-	{
-		/*
-		 * There are no publications defined. Clean up and return.
-		 */
-		PQclear(res);
-		return;
-	}
-
 	i_tableoid = PQfnumber(res, "tableoid");
 	i_oid = PQfnumber(res, "oid");
 	i_pubname = PQfnumber(res, "pubname");
@@ -3637,15 +3628,6 @@ getSubscriptions(Archive *fout)
 
 	ntups = PQntuples(res);
 
-	if (ntups == 0)
-	{
-		/*
-		 * There are no subscriptions defined. Clean up and return.
-		 */
-		PQclear(res);
-		return;
-	}
-
 	i_tableoid = PQfnumber(res, "tableoid");
 	i_oid = PQfnumber(res, "oid");
 	i_subname = PQfnumber(res, "subname");
-- 
GitLab