From: Tom Lane Date: Thu, 1 Jul 2004 03:13:05 +0000 (+0000) Subject: Fix seriously nasty memory leak in new TransactionIdIsInProgress code. X-Git-Tag: REL8_0_0BETA1~288 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=77a436ba55de1bb72df264e54db05873acf43c74;p=postgresql Fix seriously nasty memory leak in new TransactionIdIsInProgress code. --- 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; }