]> 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)
committerKern Sibbald <kern@sibbald.com>
Mon, 1 Feb 2010 17:53:23 +0000 (18:53 +0100)
bacula/src/cats/dbi.c
bacula/src/cats/ingres.c
bacula/src/cats/mysql.c
bacula/src/cats/postgresql.c
bacula/src/cats/sqlite.c

index 16e7546bd48910205d3d8f0e96857c158fbf3fb6..11f4003329bdf871d0ca35135b6aa00769a4ba7a 100644 (file)
@@ -372,6 +372,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 5a9291847e39a219e8088a550bc4c32dd619bc2b..4cf709b26e6df794f84df29c08c107ca427c3406 100755 (executable)
@@ -273,6 +273,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 994e0e548558967605309284096116b8949d9bcd..a2a355b2141c424c3e767ef78a14526a29ff9fc0 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$
  */
 
 
@@ -269,6 +268,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 c5757efced6115ec9371932d756e23c58ccab3bb..c0d52cb2e60434fae4598e0e7c2129251e386dfa 100644 (file)
@@ -290,6 +290,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 d18b24e891bec6d83fe726e6ae1f7138aa4509e6..2e07ace931f9f1af6a1016f503e1874f22e3ae37 100644 (file)
@@ -261,6 +261,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);
 }