From 050b0ae9372720d3f2e258cd0d6895b36c83ea11 Mon Sep 17 00:00:00 2001 From: Martin Quinson Date: Thu, 10 Nov 2011 22:03:36 +0100 Subject: [PATCH] populate the routing_none_finalize to make sure that we always call these functions --- src/surf/surf_routing.c | 8 +++----- src/surf/surf_routing_none.c | 31 +++++++++++++++---------------- 2 files changed, 18 insertions(+), 21 deletions(-) diff --git a/src/surf/surf_routing.c b/src/surf/surf_routing.c index 0f6c426f7c..35e71ac261 100644 --- a/src/surf/surf_routing.c +++ b/src/surf/surf_routing.c @@ -315,7 +315,6 @@ void routing_AS_begin(const char *AS_id, const char *wanted_routing_type) new_as->model_desc = model; new_as->hierarchy = SURF_ROUTING_NULL; new_as->name = xbt_strdup(AS_id); - new_as->routing_sons = xbt_dict_new(); if (current_routing == NULL && global_routing->root == NULL) { @@ -1222,11 +1221,10 @@ static void finalize_rec(AS_t as) { char *key; AS_t elem; - xbt_dict_foreach(as->routing_sons, cursor, key, elem) - finalize_rec(elem); + xbt_dict_foreach(as->routing_sons, cursor, key, elem) { + finalize_rec(elem); + } - xbt_dict_free(&as->routing_sons); - xbt_free(as->name); as->finalize(as); } diff --git a/src/surf/surf_routing_none.c b/src/surf/surf_routing_none.c index a48d9aedc1..f4d9516528 100644 --- a/src/surf/surf_routing_none.c +++ b/src/surf/surf_routing_none.c @@ -8,10 +8,7 @@ XBT_LOG_NEW_DEFAULT_SUBCATEGORY(surf_route_none, surf, "Routing part of surf"); -/* Routing model structure */ -/* Business methods */ -static xbt_dynar_t none_get_onelink_routes(AS_t rc) -{ +static xbt_dynar_t none_get_onelink_routes(AS_t rc) { return NULL; } @@ -23,23 +20,16 @@ static route_extended_t none_get_route(AS_t rc, static route_extended_t none_get_bypass_route(AS_t rc, const char *src, - const char *dst) -{ + const char *dst) { return NULL; } -void model_none_finalize(AS_t as) { - xbt_free(as); -} - -static void none_parse_PU(AS_t rc, - const char *name) -{ +static void none_parse_PU(AS_t rc, const char *name) { + /* don't care about PUs */ } -static void none_parse_AS(AS_t rc, - const char *name) -{ +static void none_parse_AS(AS_t rc, const char *name) { + /* even don't care about sub-ASes */ } /* Creation routing model functions */ @@ -57,6 +47,15 @@ AS_t model_none_create_sized(size_t childsize) { new_component->get_onelink_routes = none_get_onelink_routes; new_component->get_bypass_route = none_get_bypass_route; new_component->finalize = model_none_finalize; + + new_component->routing_sons = xbt_dict_new(); + return new_component; } +void model_none_finalize(AS_t as) { + xbt_dict_free(&as->routing_sons); + xbt_free(as->name); + xbt_free(as); +} + -- 2.20.1