From: Arnaud Giersch Date: Tue, 21 Jun 2011 07:56:18 +0000 (+0200) Subject: Do not duplicate host name uselessly. X-Git-Tag: v3_6_2~188^2~33 X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/commitdiff_plain/d4d7b77c8e455e5f7c80bc22b136a48c107aaf11?hp=86ba806c0faa7a0e1326694fa9cb5daf24ab9279;ds=sidebyside Do not duplicate host name uselessly. --- diff --git a/src/simix/smx_deployment.c b/src/simix/smx_deployment.c index c1f8dd5158..4a21d8c67a 100644 --- a/src/simix/smx_deployment.c +++ b/src/simix/smx_deployment.c @@ -21,9 +21,10 @@ static double kill_time = -1.0; static void parse_process_init(void) { - parse_host = xbt_strdup(A_surfxml_process_host); - xbt_assert(SIMIX_host_get_by_name(parse_host), - "Host '%s' unknown", parse_host); + smx_host_t host = SIMIX_host_get_by_name(A_surfxml_process_host); + if (!host) + THROWF(arg_error, 0, "Host '%s' unknown", A_surfxml_process_host); + parse_host = host->name; parse_code = SIMIX_get_registered_function(A_surfxml_process_function); xbt_assert(parse_code, "Function '%s' unknown", A_surfxml_process_function); @@ -76,7 +77,6 @@ static void parse_process_finalize(void) current_property_set); /* verify if process has been created (won't be the case if the host is currently dead, but that's fine) */ if (!process) { - xbt_free(parse_host); return; } if (kill_time > SIMIX_get_clock()) { @@ -84,7 +84,6 @@ static void parse_process_finalize(void) SIMIX_timer_set(start_time, simix_global->kill_process_function, process); } } - xbt_free(parse_host); } current_property_set = NULL; } @@ -189,9 +188,10 @@ void SIMIX_process_set_function(const char *process_host, char *arg; /* init process */ - parse_host = xbt_strdup(process_host); - xbt_assert(SIMIX_host_get_by_name(parse_host), - "Host '%s' unknown", parse_host); + smx_host_t host = SIMIX_host_get_by_name(process_host); + if (!host) + THROWF(arg_error, 0, "Host '%s' unknown", process_host); + parse_host = host->name; parse_code = SIMIX_get_registered_function(process_function); xbt_assert(parse_code, "Function '%s' unknown", process_function);