Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Check that table[0].name is defined.
authorArnaud Giersch <arnaud.giersch@iut-bm.univ-fcomte.fr>
Tue, 5 Nov 2013 12:16:41 +0000 (13:16 +0100)
committerArnaud Giersch <arnaud.giersch@iut-bm.univ-fcomte.fr>
Tue, 5 Nov 2013 16:54:52 +0000 (17:54 +0100)
Also change "model" for "collective" in find_coll_description().

src/smpi/smpi_coll.c
src/surf/surf.c

index e6db148..70fdb14 100644 (file)
@@ -143,7 +143,9 @@ int find_coll_description(s_mpi_coll_description_t * table,
         return i;
     }
   }
-  name_list = strdup(table[0].name);
+  if (!table[0].name)
+    xbt_die("No collective is valid! This is a bug.");
+  name_list = xbt_strdup(table[0].name);
   for (i = 1; table[i].name; i++) {
     name_list =
         xbt_realloc(name_list,
@@ -151,7 +153,7 @@ int find_coll_description(s_mpi_coll_description_t * table,
     strcat(name_list, ", ");
     strcat(name_list, table[i].name);
   }
-  xbt_die("Model '%s' is invalid! Valid models are: %s.", name, name_list);
+  xbt_die("Collective '%s' is invalid! Valid collectives are: %s.", name, name_list);
   return -1;
 }
 
index de54e43..807bfaf 100644 (file)
@@ -233,7 +233,9 @@ int find_model_description(s_surf_model_description_t * table,
     if (!strcmp(name, table[i].name)) {
       return i;
     }
-  name_list = strdup(table[0].name);
+  if (!table[0].name)
+    xbt_die("No model is valid! This is a bug.");
+  name_list = xbt_strdup(table[0].name);
   for (i = 1; table[i].name; i++) {
     name_list =
         xbt_realloc(name_list,