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;