summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPavan Deolasee2016-04-14 09:19:35 +0000
committerPavan Deolasee2016-04-14 09:19:35 +0000
commite98f9fb9d7378f86c1b8c59ce4c7f1ebda398671 (patch)
treefa7d1f35f867d291712f2bdd6de09eb347652344
parent7c1e120d289ee7198bd31f262b0ebea00333b199 (diff)
Fix yet another memory leak in the shared queue producer path.
-rw-r--r--src/backend/executor/producerReceiver.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/backend/executor/producerReceiver.c b/src/backend/executor/producerReceiver.c
index 8dec452b6a..b7a7033833 100644
--- a/src/backend/executor/producerReceiver.c
+++ b/src/backend/executor/producerReceiver.c
@@ -57,6 +57,8 @@ producerStartupReceiver(DestReceiver *self, int operation, TupleDesc typeinfo)
*/
MemoryContext savecontext;
savecontext = MemoryContextSwitchTo(PortalGetHeapMemory(ActivePortal));
+ if (myState->typeinfo)
+ pfree(myState->typeinfo);
myState->typeinfo = CreateTupleDescCopy(typeinfo);
MemoryContextSwitchTo(savecontext);
}