lat_initial, lat_trace, state_initial, state_trace);
}
-static int nb_link = 0;
+static int nb_link;
+static int link_name_capacity;
static char **link_name = NULL;
static int src_id = -1;
static int dst_id = -1;
src_id = network_card_new(A_surfxml_route_src);
dst_id = network_card_new(A_surfxml_route_dst);
nb_link = 0;
- link_name = NULL;
+ link_name_capacity = 16;
+ link_name = xbt_new(char*, link_name_capacity);
}
static void parse_route_elem(void)
{
- nb_link++;
- link_name = xbt_realloc(link_name, (nb_link) * sizeof(char *));
- link_name[(nb_link) - 1] = xbt_strdup(A_surfxml_route_element_name);
+ if (nb_link == link_name_capacity) {
+ link_name_capacity *= 2;
+ link_name = xbt_realloc(link_name, (link_name_capacity) * sizeof(char *));
+ }
+ link_name[nb_link++] = xbt_strdup(A_surfxml_route_element_name);
}
static void parse_route_set_route(void)
get_resource_name;
surf_network_resource->common_public->action_get_state =
surf_action_get_state;
+ surf_network_resource->common_public->action_get_start_time =
+ surf_action_get_start_time;
+ surf_network_resource->common_public->action_get_finish_time =
+ surf_action_get_finish_time;
surf_network_resource->common_public->action_free = action_free;
surf_network_resource->common_public->action_cancel = action_cancel;
surf_network_resource->common_public->action_recycle = action_recycle;