From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:58980) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YgIah-0003yt-NA for qemu-devel@nongnu.org; Thu, 09 Apr 2015 15:58:20 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YgIae-0001LH-4e for qemu-devel@nongnu.org; Thu, 09 Apr 2015 15:58:19 -0400 Received: from mx1.redhat.com ([209.132.183.28]:36340) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YgIad-0001L7-Vi for qemu-devel@nongnu.org; Thu, 09 Apr 2015 15:58:16 -0400 From: Eduardo Habkost Date: Thu, 9 Apr 2015 16:57:29 -0300 Message-Id: <1428609450-29812-2-git-send-email-ehabkost@redhat.com> In-Reply-To: <1428609450-29812-1-git-send-email-ehabkost@redhat.com> References: <1428609450-29812-1-git-send-email-ehabkost@redhat.com> Subject: [Qemu-devel] [PATCH 1/2] qom: strdup() target property name on object_property_add_alias() List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: Peter Crosthwaite , =?UTF-8?q?Andreas=20F=C3=A4rber?= , Stefan Hajnoczi 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 --- qom/object.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/qom/object.c b/qom/object.c index b8dff43..550dd48 100644 --- a/qom/object.c +++ b/qom/object.c @@ -1689,7 +1689,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, @@ -1720,6 +1720,7 @@ static void property_release_alias(Object *obj, const char *name, void *opaque) { AliasProperty *prop = opaque; + g_free(prop->target_name); g_free(prop); } @@ -1747,7 +1748,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, -- 2.1.0