Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Ansi C declaration of the variables (at the beginning of the blocks)
[simgrid.git] / src / surf / workstation_ptask_L07.c
index b78601f..3c95c6f 100644 (file)
@@ -485,10 +485,8 @@ static surf_action_t execute_parallel_task(int workstation_nb,
   int nb_host = 0;
   double latency = 0.0;
 
-  if (parallel_task_link_set == NULL) {
-    parallel_task_link_set =
-       xbt_dict_new_ext(workstation_nb * workstation_nb * 10);
-  }
+  if (parallel_task_link_set == NULL)
+    parallel_task_link_set = xbt_dict_new();
 
   xbt_dict_reset(parallel_task_link_set);
 
@@ -910,9 +908,10 @@ static void add_route(void)
     int link_list_capacity = 0;
     link_L07_t *link_list = NULL;
     xbt_dict_cursor_t cursor = NULL;
-    char *key,*data;
+    char *key,*data, *end;
     const char *sep = "#";
     xbt_dynar_t links, keys;
+       char* link = NULL;
 
     if (routing_table == NULL) create_routing_table();
 
@@ -921,13 +920,13 @@ static void add_route(void)
        links = (xbt_dynar_t)data;
        keys = xbt_str_split_str(key, sep);
        
-       src_id = atoi(xbt_dynar_get_as(keys, 0, char*));
-       dst_id = atoi(xbt_dynar_get_as(keys, 1, char*));
+       src_id = strtol(xbt_dynar_get_as(keys, 0, char*), &end, 16);
+       dst_id = strtol(xbt_dynar_get_as(keys, 1, char*), &end, 16);
 
        link_list_capacity = xbt_dynar_length(links);
        link_list = xbt_new(link_L07_t, link_list_capacity);
 
-       char* link = NULL;
+       
        xbt_dynar_foreach (links, cpt, link) {
          TRY {
            link_list[nb_link++] = xbt_dict_get(link_set, link);
@@ -937,7 +936,6 @@ static void add_route(void)
          }    
        }
        route_new(src_id, dst_id, link_list, nb_link);
-       xbt_dynar_free(&links);
    }
 
    xbt_dict_free(&route_table);
@@ -1099,8 +1097,8 @@ static void model_init_internal(void)
 
   surf_workstation_model->common_public->get_properties = get_properties;
 
-  workstation_set = xbt_dict_new_ext(1024);
-  link_set = xbt_dict_new_ext(1024);
+  workstation_set = xbt_dict_new();
+  link_set = xbt_dict_new();
 
   if (!ptask_maxmin_system)
     ptask_maxmin_system = lmm_system_new();