Missing calls to PQclear in large_obj.c and describe.c.
authorTom Lane
Fri, 27 Jun 2003 16:55:23 +0000 (16:55 +0000)
committerTom Lane
Fri, 27 Jun 2003 16:55:23 +0000 (16:55 +0000)
Greg Sabino Mullane

src/bin/psql/describe.c
src/bin/psql/large_obj.c

index a20cc1a4207c4f4a98d3a66c0a36f907c7dd8428..39aaf699da4c565cdd0f3bcd79247840aa35736c 100644 (file)
@@ -3,7 +3,7 @@
  *
  * Copyright 2000-2002 by PostgreSQL Global Development Group
  *
- * $Header: /cvsroot/pgsql/src/bin/psql/describe.c,v 1.77 2003/05/28 16:03:59 tgl Exp $
+ * $Header: /cvsroot/pgsql/src/bin/psql/describe.c,v 1.78 2003/06/27 16:55:22 tgl Exp $
  */
 #include "postgres_fe.h"
 #include "describe.h"
@@ -963,7 +963,10 @@ describeOneTableDetails(const char *schemaname,
                              oid);
            result2 = PSQLexec(buf.data, false);
            if (!result2)
+           {
+               PQclear(result1);
                goto error_return;
+           }
            else
                check_count = PQntuples(result2);
        }
@@ -978,7 +981,11 @@ describeOneTableDetails(const char *schemaname,
                              oid);
            result3 = PSQLexec(buf.data, false);
            if (!result3)
+           {
+               PQclear(result1);
+               PQclear(result2);
                goto error_return;
+           }
            else
                rule_count = PQntuples(result3);
        }
@@ -998,7 +1005,12 @@ describeOneTableDetails(const char *schemaname,
                              oid);
            result4 = PSQLexec(buf.data, false);
            if (!result4)
+           {
+               PQclear(result1);
+               PQclear(result2);
+               PQclear(result3);
                goto error_return;
+           }
            else
                trigger_count = PQntuples(result4);
        }
@@ -1014,7 +1026,13 @@ describeOneTableDetails(const char *schemaname,
                              oid);
            result5 = PSQLexec(buf.data, false);
            if (!result5)
+           {
+               PQclear(result1);
+               PQclear(result2);
+               PQclear(result3);
+               PQclear(result4);
                goto error_return;
+           }
            else
                foreignkey_count = PQntuples(result5);
        }
index b39ef0dca1c9ecc803212c6baada2f04d4da9854..3d0b3a6eb96f31567427a092d4884f12ed515f77 100644 (file)
@@ -3,7 +3,7 @@
  *
  * Copyright 2000-2002 by PostgreSQL Global Development Group
  *
- * $Header: /cvsroot/pgsql/src/bin/psql/large_obj.c,v 1.25 2003/04/18 23:38:47 tgl Exp $
+ * $Header: /cvsroot/pgsql/src/bin/psql/large_obj.c,v 1.26 2003/06/27 16:55:23 tgl Exp $
  */
 #include "postgres_fe.h"
 #include "large_obj.h"
@@ -78,6 +78,7 @@ handle_transaction(void)
    }
 
    PQsetNoticeProcessor(pset.db, old_notice_hook, NULL);
+   PQclear(res);
    return true;
 }
 
@@ -324,6 +325,7 @@ do_lo_unlink(const char *loid_arg)
            }
            return false;
        }
+       PQclear(res);
    }
 
    if (own_transaction)