From 114874900ca544317e4266787b4af27cc6eddd84 Mon Sep 17 00:00:00 2001 From: sebastid Date: Fri, 4 Nov 2005 19:33:08 +0000 Subject: [PATCH] Remove strdup SVN revision: 18289 --- legacy/evas/src/lib/canvas/evas_data.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/legacy/evas/src/lib/canvas/evas_data.c b/legacy/evas/src/lib/canvas/evas_data.c index 85018ebd6a..d68fdb084e 100644 --- a/legacy/evas/src/lib/canvas/evas_data.c +++ b/legacy/evas/src/lib/canvas/evas_data.c @@ -52,8 +52,9 @@ evas_object_data_set(Evas_Object *obj, const char *key, const void *data) evas_object_data_del(obj, key); if (data == NULL) return; - node = malloc(sizeof(Evas_Data_Node)); - node->key = strdup(key); + node = malloc(sizeof(Evas_Data_Node) + strlen(key) + 1); + node->key = (char *)node + sizeof(Evas_Data_Node); + strcpy(node->key, key); node->data = (void *)data; obj->data.elements = evas_list_prepend(obj->data.elements, node); } @@ -150,7 +151,6 @@ evas_object_data_del(Evas_Object *obj, const char *key) data = node->data; obj->data.elements = evas_list_remove(obj->data.elements, node); - free(node->key); free(node); return data; }