From 12a45a20aa25468c56311e71320bb586c2490836 Mon Sep 17 00:00:00 2001 From: Heikki Linnakangas Date: Fri, 7 Jun 2019 12:43:55 +0300 Subject: [PATCH] Fix copy-pasto in freeing memory on error in vacuumlo. It's harmless to call PQfreemem() with a NULL argument, so the only consequence was that if allocating 'schema' failed, but allocating 'table' or 'field' succeeded, we would leak a bit of memory. That's highly unlikely to happen, so this is just academical, but let's get it right. Per bug #15838 from Timur Birsh. Backpatch back to 9.5, where the PQfreemem() calls were introduced. Discussion: https://www.postgresql.org/message-id/15838-3221652c72c5e69d@postgresql.org --- contrib/vacuumlo/vacuumlo.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/contrib/vacuumlo/vacuumlo.c b/contrib/vacuumlo/vacuumlo.c index 8dbcaad797..fc7e836983 100644 --- a/contrib/vacuumlo/vacuumlo.c +++ b/contrib/vacuumlo/vacuumlo.c @@ -245,9 +245,9 @@ vacuumlo(const char *database, const struct _param *param) PQfinish(conn); if (schema != NULL) PQfreemem(schema); - if (schema != NULL) + if (table != NULL) PQfreemem(table); - if (schema != NULL) + if (field != NULL) PQfreemem(field); return -1; }