]> git.sur5r.net Git - bacula/bacula/blobdiff - bacula/src/cats/postgresql.c
Correct compile error
[bacula/bacula] / bacula / src / cats / postgresql.c
index 8d4deb4e0220d4d9bb2a34e6b42f5e9127aee80c..bc5190e70b0c81efe906742a7297f209fa684e03 100644 (file)
@@ -254,7 +254,6 @@ db_close_database(JCR *jcr, B_DB *mdb)
       if (mdb->db_socket) {
          free(mdb->db_socket);
       }
-      my_postgresql_free_result(mdb);
       free(mdb);
    }
    V(mutex);
@@ -511,6 +510,8 @@ bail_out:
 
 void my_postgresql_free_result(B_DB *mdb)
 {
+   
+   db_lock(mdb);
    if (mdb->result) {
       PQclear(mdb->result);
       mdb->result = NULL;
@@ -525,6 +526,7 @@ void my_postgresql_free_result(B_DB *mdb)
       free(mdb->fields);
       mdb->fields = NULL;
    }
+   db_unlock(mdb);
 }
 
 int my_postgresql_currval(B_DB *mdb, char *table_name)
@@ -616,9 +618,7 @@ int my_postgresql_batch_start(JCR *jcr, B_DB *mdb)
    mdb->row_number   = -1;
    mdb->field_number = -1;
 
-   if (mdb->result != NULL) {
-      my_postgresql_free_result(mdb);
-   }
+   my_postgresql_free_result(mdb);
 
    for (int i=0; i < 10; i++) {
       mdb->result = PQexec(mdb->db, query);