]> git.sur5r.net Git - bacula/bacula/commitdiff
Attempt to fix SQLite3 seg fault in list routines
authorKern Sibbald <kern@sibbald.com>
Tue, 1 Sep 2009 20:08:11 +0000 (22:08 +0200)
committerKern Sibbald <kern@sibbald.com>
Tue, 1 Sep 2009 20:08:11 +0000 (22:08 +0200)
bacula/src/cats/sqlite.c

index 9d8c96343f4a322bbcc5881d371cdaf8008e5e16..ae618c7e29cfb43099fcaf8a2ee6e473bb746e19 100644 (file)
@@ -403,9 +403,15 @@ void my_sqlite_free_table(B_DB *mdb)
 
    if (mdb->fields_defined) {
       for (i=0; i < sql_num_fields(mdb); i++) {
-         free(mdb->fields[i]);
+         if (mdb->fileds[i]) {
+            free(mdb->fields[i]);
+            mdb->fields[i] = NULL;
+         }
+      }
+      if (mbd->fields) {
+         free(mdb->fields);
+         mdb->fields = NULL;
       }
-      free(mdb->fields);
       mdb->fields_defined = false;
    }
    if (mdb->result) {