]> git.sur5r.net Git - bacula/bacula/commitdiff
Free db_list when not used
authorKern Sibbald <kern@sibbald.com>
Mon, 1 Feb 2010 17:52:00 +0000 (18:52 +0100)
committerEric Bollengier <eric@eb.homelinux.org>
Mon, 2 Aug 2010 14:49:25 +0000 (16:49 +0200)
bacula/src/cats/dbi.c
bacula/src/cats/mysql.c
bacula/src/cats/postgresql.c
bacula/src/cats/sqlite.c

index 0b1472b48bc5d2d8bba2a22824911ad31216c13f..311a492b78eb0eabe8f3317ac3735e9885db4a25 100644 (file)
@@ -376,6 +376,10 @@ db_close_database(JCR *jcr, B_DB *mdb)
           free(mdb->db_driver);
       }
       free(mdb);
+      if (db_list->size() == 0) {
+         delete db_list;
+         db_list = NULL;
+      }
    }
    V(mutex);
 }
index c71418e44913fabc2865ebf5bc99310a0819f128..52ee3302f55894ec5b983aa3847faf530206ffbd 100644 (file)
@@ -1,7 +1,7 @@
 /*
    Bacula® - The Network Backup Solution
 
-   Copyright (C) 2000-2008 Free Software Foundation Europe e.V.
+   Copyright (C) 2000-2010 Free Software Foundation Europe e.V.
 
    The main author of Bacula is Kern Sibbald, with contributions from
    many others, a complete list can be found in the file AUTHORS.
@@ -32,7 +32,6 @@
  *
  *    Kern Sibbald, March 2000
  *
- *    Version $Id$
  */
 
 
@@ -272,6 +271,10 @@ db_close_database(JCR *jcr, B_DB *mdb)
          free(mdb->db_socket);
       }
       free(mdb);
+      if (db_list->size() == 0) {
+         delete db_list;
+         db_list = NULL;
+      }
    }
    V(mutex);
 }
index 82c9b2377b6f62909b127e844c0444c5ec4324d4..9407978d67ce1e751857298f0b5d5601511fd4ff 100644 (file)
@@ -292,6 +292,10 @@ db_close_database(JCR *jcr, B_DB *mdb)
          free(mdb->db_socket);
       }
       free(mdb);
+      if (db_list->size() == 0) {
+         delete db_list;
+         db_list = NULL;
+      }
    }
    V(mutex);
 }
index 93d4196ae3fa498877bf3cddf2a37af968122fe0..22680e2f4a4d23353133b0d7a82a8cbebe3880dd 100644 (file)
@@ -263,6 +263,10 @@ db_close_database(JCR *jcr, B_DB *mdb)
          free(mdb->db_name);
       }
       free(mdb);
+      if (db_list->size() == 0) {
+         delete db_list;
+         db_list = NULL;
+      }
    }
    V(mutex);
 }