From: Eduardo Habkost Date: Thu, 9 Apr 2015 19:57:29 +0000 (-0300) Subject: qom: strdup() target property name on object_property_add_alias() X-Git-Tag: v2.4.0-rc0~42^2~13 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=1590d266d96b3f9b42443d6388dfc38f527ac2d8;p=thirdparty%2Fqemu.git qom: strdup() target property name on object_property_add_alias() With this, object_property_add_alias() callers can safely free the target property name, like what already happens with the 'name' argument to all object_property_add*() functions. Signed-off-by: Eduardo Habkost Reviewed-by: Paolo Bonzini Reviewed-by: Stefan Hajnoczi Signed-off-by: Andreas Färber --- diff --git a/qom/object.c b/qom/object.c index 96abd347b19..d142d15644a 100644 --- a/qom/object.c +++ b/qom/object.c @@ -1705,7 +1705,7 @@ void object_property_add_uint64_ptr(Object *obj, const char *name, typedef struct { Object *target_obj; - const char *target_name; + char *target_name; } AliasProperty; static void property_get_alias(Object *obj, struct Visitor *v, void *opaque, @@ -1736,6 +1736,7 @@ static void property_release_alias(Object *obj, const char *name, void *opaque) { AliasProperty *prop = opaque; + g_free(prop->target_name); g_free(prop); } @@ -1763,7 +1764,7 @@ void object_property_add_alias(Object *obj, const char *name, prop = g_malloc(sizeof(*prop)); prop->target_obj = target_obj; - prop->target_name = target_name; + prop->target_name = g_strdup(target_name); op = object_property_add(obj, name, prop_type, property_get_alias,