From: Marion Guthmuller Date: Thu, 10 Jan 2013 17:54:31 +0000 (+0100) Subject: model-checker : free memory for stacks comparison X-Git-Tag: v3_9_rc1~86^2~28 X-Git-Url: http://bilbo.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/commitdiff_plain/ee9810253992f05b05992b201a37acbb255a1dc0 model-checker : free memory for stacks comparison --- diff --git a/src/mc/mc_compare.c b/src/mc/mc_compare.c index f016ad3550..07550eb10a 100644 --- a/src/mc/mc_compare.c +++ b/src/mc/mc_compare.c @@ -539,8 +539,8 @@ static int compare_local_variables(char *s1, char *s2, xbt_dynar_t heap_equals){ s_tokens2 = xbt_str_split(xbt_dynar_get_as(tokens2, cursor, char *), "="); if(xbt_dynar_length(s_tokens1) > 1 && xbt_dynar_length(s_tokens2) > 1){ if((strcmp(xbt_dynar_get_as(s_tokens1, 0, char *), "ip") == 0) && (strcmp(xbt_dynar_get_as(s_tokens2, 0, char *), "ip") == 0)){ - ip1 = strdup(xbt_dynar_get_as(s_tokens1, 1, char *)); - ip2 = strdup(xbt_dynar_get_as(s_tokens2, 1, char *)); + ip1 = xbt_dynar_get_as(s_tokens1, 1, char *); + ip2 = xbt_dynar_get_as(s_tokens2, 1, char *); } if(strcmp(xbt_dynar_get_as(s_tokens1, 1, char *), xbt_dynar_get_as(s_tokens2, 1, char *)) != 0){ /* Ignore this variable ? */ @@ -557,6 +557,8 @@ static int compare_local_variables(char *s1, char *s2, xbt_dynar_t heap_equals){ XBT_VERB("Variable %s is different between stacks in %s : %s - %s", xbt_dynar_get_as(s_tokens1, 0, char *), ip1, xbt_dynar_get_as(s_tokens1, 1, char *), xbt_dynar_get_as(s_tokens2, 1, char *)); xbt_dynar_free(&s_tokens1); xbt_dynar_free(&s_tokens2); + xbt_dynar_free(&tokens1); + xbt_dynar_free(&tokens2); return 1; } }