Minor cleanup of libpq/LO examples: fix some memory leaks, update a comment
authorNeil Conway <neilc@samurai.com>
Wed, 22 Sep 2004 05:12:45 +0000 (05:12 +0000)
committerNeil Conway <neilc@samurai.com>
Wed, 22 Sep 2004 05:12:45 +0000 (05:12 +0000)
or two.

src/test/examples/testlibpq.c
src/test/examples/testlibpq4.c
src/test/examples/testlo.c

index 1f447b33c3954b7742bdb824a9add9a9c05434a7..f650118a29e8efc5d080d947018a8ba83e48d533 100644 (file)
@@ -1,7 +1,7 @@
 /*
  * testlibpq.c
  *
- *             Test the C version of LIBPQ, the POSTGRES frontend library.
+ *             Test the C version of libpq, the PostgreSQL frontend library.
  */
 #include <stdio.h>
 #include <stdlib.h>
index 57b5f56ff51eeb57a344c6fabd5c2cc12e259e25..0eda55352ed29f8df37c6fcb22963352c5649171 100644 (file)
@@ -92,8 +92,8 @@ main(int argc, char **argv)
        }
 
        /*
-        * should PQclear PGresult whenever it is no longer needed to avoid
-        * memory leaks
+        * make sure to PQclear() a PGresult whenever it is no longer
+        * needed to avoid memory leaks
         */
        PQclear(res1);
 
@@ -106,7 +106,7 @@ main(int argc, char **argv)
        {
                fprintf(stderr, "DECLARE CURSOR command failed\n");
                PQclear(res1);
-               exit_nicely(conn1, NULL);
+               exit_nicely(conn1, conn2);
        }
        PQclear(res1);
 
@@ -115,7 +115,7 @@ main(int argc, char **argv)
        {
                fprintf(stderr, "FETCH ALL command didn't return tuples properly\n");
                PQclear(res1);
-               exit_nicely(conn1, NULL);
+               exit_nicely(conn1, conn2);
        }
 
        /* first, print out the attribute names */
@@ -142,10 +142,10 @@ main(int argc, char **argv)
        res1 = PQexec(conn1, "END");
        PQclear(res1);
 
-       /* close the connection to the database and cleanup */
+       /* close the connections to the database and cleanup */
        PQfinish(conn1);
+       PQfinish(conn2);
 
 /*      fclose(debug); */
-       return 0;                                       /* Though PQfinish(conn1) has called
-                                                                * exit(1) */
+       return 0;
 }
index 2d5db3a5c2c49095024d1a2ce42adc208fb06e0e..988b51171a905ab1c955a3e69cc48c3d0460cfdb 100644 (file)
@@ -8,7 +8,7 @@
  *
  *
  * IDENTIFICATION
- *       $PostgreSQL: pgsql/src/test/examples/testlo.c,v 1.22 2004/08/29 04:13:12 momjian Exp $
+ *       $PostgreSQL: pgsql/src/test/examples/testlo.c,v 1.23 2004/09/22 05:12:45 neilc Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -99,6 +99,7 @@ pickout(PGconn *conn, Oid lobjId, int start, int len)
                if (nbytes <= 0)
                        break;                          /* no more data? */
        }
+       free(buf);
        fprintf(stderr, "\n");
        lo_close(conn, lobj_fd);
 }
@@ -134,6 +135,7 @@ overwrite(PGconn *conn, Oid lobjId, int start, int len)
                        break;
                }
        }
+       free(buf);
        fprintf(stderr, "\n");
        lo_close(conn, lobj_fd);
 }