From 77a436ba55de1bb72df264e54db05873acf43c74 Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Thu, 1 Jul 2004 03:13:05 +0000 Subject: [PATCH] Fix seriously nasty memory leak in new TransactionIdIsInProgress code. --- src/backend/storage/ipc/sinval.c | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/src/backend/storage/ipc/sinval.c b/src/backend/storage/ipc/sinval.c index bf4eb0f629..f5e909c672 100644 --- a/src/backend/storage/ipc/sinval.c +++ b/src/backend/storage/ipc/sinval.c @@ -8,7 +8,7 @@ * * * IDENTIFICATION - * $PostgreSQL: pgsql/src/backend/storage/ipc/sinval.c,v 1.65 2004/07/01 00:50:52 tgl Exp $ + * $PostgreSQL: pgsql/src/backend/storage/ipc/sinval.c,v 1.66 2004/07/01 03:13:05 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -509,7 +509,6 @@ TransactionIdIsInProgress(TransactionId xid) if (result) break; - } } @@ -531,12 +530,18 @@ TransactionIdIsInProgress(TransactionId xid) * We don't care if it aborted, because if it did, we won't find * it in the array. */ - for (i = 0; i < nxids; i++) + { if (TransactionIdEquals(xids[i], xid)) - return true; + { + result = true; + break; + } + } } + pfree(xids); + return result; } -- 2.40.0