X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/1f606358fff6ef994cd58570e7c77ee6259d6a4e..97fa57103ccd60e8fc4c04ea6591904a7600a679:/src/surf/xml/surfxml_sax_cb.cpp
diff --git a/src/surf/xml/surfxml_sax_cb.cpp b/src/surf/xml/surfxml_sax_cb.cpp
index bf7b20ee55..3d2e6a3aad 100644
--- a/src/surf/xml/surfxml_sax_cb.cpp
+++ b/src/surf/xml/surfxml_sax_cb.cpp
@@ -728,16 +728,18 @@ void ETag_surfxml_route(void){
route.dst = A_surfxml_route_dst;
route.gw_src = nullptr;
route.gw_dst = nullptr;
+ route.link_list = new std::vector();
route.symmetrical = (A_surfxml_route_symmetrical == A_surfxml_route_symmetrical_YES);
unsigned int cpt;
char *link_name;
xbt_dynar_foreach(parsed_link_list, cpt, link_name) {
simgrid::surf::Link *link = Link::byName(link_name);
- route.link_list.push_back(link);
+ route.link_list->push_back(link);
}
sg_platf_new_route(&route);
+ delete route.link_list;
xbt_dynar_free(&parsed_link_list);
}
@@ -758,12 +760,13 @@ void ETag_surfxml_ASroute(void){
surf_parse_error("gw_dst=\"%s\" not found for ASroute from \"%s\" to \"%s\"",
A_surfxml_ASroute_gw___dst, ASroute.src, ASroute.dst);
+ ASroute.link_list = new std::vector();
unsigned int cpt;
char *link_name;
xbt_dynar_foreach(parsed_link_list, cpt, link_name) {
simgrid::surf::Link *link = Link::byName(link_name);
- ASroute.link_list.push_back(link);
+ ASroute.link_list->push_back(link);
}
xbt_dynar_free(&parsed_link_list);
@@ -789,12 +792,13 @@ void ETag_surfxml_bypassRoute(void){
route.gw_src = nullptr;
route.gw_dst = nullptr;
route.symmetrical = false;
+ route.link_list = new std::vector();
unsigned int cpt;
char *link_name;
xbt_dynar_foreach(parsed_link_list, cpt, link_name) {
simgrid::surf::Link *link = Link::byName(link_name);
- route.link_list.push_back(link);
+ route.link_list->push_back(link);
}
xbt_dynar_free(&parsed_link_list);
@@ -807,11 +811,12 @@ void ETag_surfxml_bypassASroute(void){
ASroute.src = A_surfxml_bypassASroute_src;
ASroute.dst = A_surfxml_bypassASroute_dst;
+ ASroute.link_list = new std::vector();
unsigned int cpt;
char *link_name;
xbt_dynar_foreach(parsed_link_list, cpt, link_name) {
simgrid::surf::Link *link = Link::byName(link_name);
- ASroute.link_list.push_back(link);
+ ASroute.link_list->push_back(link);
}
xbt_dynar_free(&parsed_link_list);
ASroute.symmetrical = false;