Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Plug some memleaks.
authoralegrand <alegrand@48e7efb5-ca39-0410-a469-dd3cf9ba447f>
Wed, 18 Jun 2008 15:54:06 +0000 (15:54 +0000)
committeralegrand <alegrand@48e7efb5-ca39-0410-a469-dd3cf9ba447f>
Wed, 18 Jun 2008 15:54:06 +0000 (15:54 +0000)
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@5756 48e7efb5-ca39-0410-a469-dd3cf9ba447f

src/surf/surfxml_parse.c

index 9e07bba..4ecc3bd 100644 (file)
@@ -565,6 +565,8 @@ static void free_data(void)
 {
   char *key,*data;
   xbt_dict_cursor_t cursor = NULL;
+  char *name;
+  unsigned int cpt = 0;
 
   xbt_dict_foreach(route_table, cursor, key, data) {
     xbt_dynar_t links = (xbt_dynar_t)data;
@@ -578,12 +580,12 @@ static void free_data(void)
   route_link_list = NULL;
 
   xbt_dict_free(&route_multi_table);
+
+  xbt_dynar_foreach (route_multi_elements, cpt, name)  free(name);
   xbt_dynar_free(&route_multi_elements);
 
   xbt_dict_foreach(set_list, cursor, key, data) {
     xbt_dynar_t set = (xbt_dynar_t)data;
-    char *name;
-    unsigned int cpt = 0;
 
     xbt_dynar_foreach (set, cpt, name)  free(name);
     xbt_dynar_free(&set);
@@ -1109,6 +1111,8 @@ static void parse_cluster(void)
    SURFXML_END_TAG(route_c_multi);
 
 
+   free(backbone_name);
+
    /* Restore buff */
    pop_surfxml_bufferstack(1);
 }