Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Fix some memory leack.
[simgrid.git] / teshsuite / simdag / platforms / flatifier.c
index 72dedac..456499c 100644 (file)
@@ -65,7 +65,7 @@ int main(int argc, char **argv)
   TRY {
     SD_create_environment(platformFile);
   } CATCH(e) {
-    xbt_die(bprintf("Error while loading %s: %s",platformFile,e.msg));     
+    xbt_die("Error while loading %s: %s",platformFile,e.msg);
   }
 
   printf("<?xml version='1.0'?>\n");
@@ -84,7 +84,7 @@ int main(int argc, char **argv)
            SD_workstation_get_name(hosts[i]),
            SD_workstation_get_power(hosts[i]));
     props = SD_workstation_get_properties(hosts[i]);
-    if (xbt_dict_length(props) > 0) {
+    if (props && xbt_dict_length(props) > 0) {
       printf(">\n");
       xbt_dict_foreach(props, cursor, key, data) {
         printf("    <prop id=\"%s\" value=\"%s\"/>\n", key, data);
@@ -148,6 +148,7 @@ int main(int argc, char **argv)
 
                                        char *link_name = bprintf("%s",((surf_resource_t) link)->name);
                                        printf("<link_ctn id=\"%s\"/>",link_name);
+                                       free(link_name);
                                }
                                printf("\n  </route>\n");