]> git.sur5r.net Git - bacula/bacula/commitdiff
Fix PostgreSQL double free.
authorKern Sibbald <kern@sibbald.com>
Tue, 29 May 2007 12:42:31 +0000 (12:42 +0000)
committerKern Sibbald <kern@sibbald.com>
Tue, 29 May 2007 12:42:31 +0000 (12:42 +0000)
git-svn-id: https://bacula.svn.sourceforge.net/svnroot/bacula/trunk@4929 91ce42f0-d328-0410-95d8-f526ca767f89

bacula/src/cats/postgresql.c

index a96ac4a0956fd23fe67f4abdc62b8795859539f0..9886faac0a3bf8446ce741671f56748e0651fbdd 100644 (file)
@@ -445,8 +445,9 @@ int my_postgresql_query(B_DB *mdb, const char *query) {
    mdb->row_number   = -1;
    mdb->field_number = -1;
 
-   if (mdb->result != NULL) {
+   if (mdb->result) {
       PQclear(mdb->result);  /* hmm, someone forgot to free?? */
+      mdb->result = NULL;
    }
 
    Dmsg1(500, "my_postgresql_query starts with '%s'\n", query);
@@ -459,7 +460,7 @@ int my_postgresql_query(B_DB *mdb, const char *query) {
       mdb->num_fields = (int) PQnfields(mdb->result);
       Dmsg1(500, "we have %d fields\n", mdb->num_fields);
 
-      mdb->num_rows   = PQntuples(mdb->result);
+      mdb->num_rows = PQntuples(mdb->result);
       Dmsg1(500, "we have %d rows\n", mdb->num_rows);
 
       mdb->status = 0;