From bdfac486db68d2a943d7f034740457cdf4de4785 Mon Sep 17 00:00:00 2001 From: suter Date: Sat, 31 May 2014 19:47:06 +0200 Subject: [PATCH] remove leaks introduced by previous commit. Ressource::getProperty creates a heterogeneous dict if set_property_value is called on a non existing dict of properties. Sounds more logical to create a heterogeneous dict during parsing too. BTW using homogeneous dict everywhere makes chord example fails ... --- examples/msg/properties/msg_prop.c | 4 ++-- examples/simdag/properties/sd_prop.c | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/examples/msg/properties/msg_prop.c b/examples/msg/properties/msg_prop.c index e660024f73..e4bfca3db8 100644 --- a/examples/msg/properties/msg_prop.c +++ b/examples/msg/properties/msg_prop.c @@ -62,7 +62,7 @@ static void test_host(const char*hostname) XBT_INFO(" Property: %s old value: %s", exist, value); XBT_INFO("== Trying to modify a host property"); - MSG_host_set_property_value(thehost, exist, xbt_strdup("250"), NULL); + MSG_host_set_property_value(thehost, exist, xbt_strdup("250"), xbt_free); /* Test if we have changed the value */ value = MSG_host_get_property_value(thehost, exist); @@ -73,7 +73,7 @@ static void test_host(const char*hostname) XBT_INFO(" Property: %s old value: %s", exist, value); /* Restore the value for the next test */ - MSG_host_set_property_value(thehost, exist, xbt_strdup("180"), NULL); + MSG_host_set_property_value(thehost, exist, xbt_strdup("180"), xbt_free); } int alice(int argc, char *argv[]) { /* Dump what we have on the current host */ diff --git a/examples/simdag/properties/sd_prop.c b/examples/simdag/properties/sd_prop.c index 57367620af..1feae22c6d 100644 --- a/examples/simdag/properties/sd_prop.c +++ b/examples/simdag/properties/sd_prop.c @@ -54,7 +54,7 @@ int main(int argc, char **argv) /* Trying to set a new property */ - xbt_dict_set(props, "NewProp", strdup("newValue"), NULL); + xbt_dict_set(props, "NewProp", strdup("newValue"), xbt_free); /* Print the properties of the workstation 1 */ xbt_dict_foreach(props, cursor, key, data) { @@ -88,7 +88,7 @@ int main(int argc, char **argv) XBT_INFO("\tProperty: %s is undefined", exist); else { XBT_INFO("\tProperty: %s old value: %s", exist, value); - xbt_dict_set(props, exist, strdup("250"), NULL); + xbt_dict_set(props, exist, strdup("250"), xbt_free); } /* Test if we have changed the value */ -- 2.20.1