From d3e74a5a07d8bbe1002b9b5613420eebe27b00ea Mon Sep 17 00:00:00 2001 From: sebastid Date: Wed, 26 Oct 2005 20:41:06 +0000 Subject: [PATCH] Fix _e_wid_text_change SVN revision: 17994 --- src/bin/e_widget_entry.c | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/src/bin/e_widget_entry.c b/src/bin/e_widget_entry.c index bc04ba9af..7831a1de1 100644 --- a/src/bin/e_widget_entry.c +++ b/src/bin/e_widget_entry.c @@ -118,23 +118,19 @@ _e_wid_text_change(void *data, Evas_Object *entry, char *key) wd = data; - if(*(wd->valptr) == NULL) + if (*(wd->valptr) == NULL) { size = (strlen(key) + 1) * sizeof(char); - *(wd->valptr) = realloc(*(wd->valptr), size); + *(wd->valptr) = malloc(size); snprintf(*(wd->valptr), size, "%s", key); } else { - char *tmp; - size = (strlen(*(wd->valptr)) + strlen(key) + 1) * sizeof(char); - tmp = E_NEW(char *, strlen(*(wd->valptr)) + 1); - snprintf(tmp, strlen(*(wd->valptr)) + 1, "%s", *(wd->valptr)); *(wd->valptr) = realloc(*(wd->valptr), size); - snprintf(*(wd->valptr), size, "%s%s\0", tmp, key); - E_FREE(tmp); + strcat(*(wd->valptr), key); } + return 1; } /* externally accessible functions */