From 4a0a6b636216709ab830ca90f6c6d9cdb358630b Mon Sep 17 00:00:00 2001 From: ChunEon Park Date: Fri, 6 Apr 2012 05:58:50 +0000 Subject: [PATCH] elementary/cnp - [E-devel] [Patch] elm_cnp notify_handler patch When pasting data to entry, notify_handler_text sent incorrect string. Because notify_handler_text received string including garbage value. I cut string as its data length. Signed-By-Off: Minseok Kim SVN revision: 69942 --- legacy/elementary/src/lib/elm_cnp.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/legacy/elementary/src/lib/elm_cnp.c b/legacy/elementary/src/lib/elm_cnp.c index 6c9728a7b5..ab1a7fe74e 100644 --- a/legacy/elementary/src/lib/elm_cnp.c +++ b/legacy/elementary/src/lib/elm_cnp.c @@ -775,8 +775,12 @@ notify_handler_text(Cnp_Selection *sel, Ecore_X_Event_Selection_Notify *notify) { Ecore_X_Selection_Data *data; char *str; + char *mkupstr; data = notify->data; + str = malloc(sizeof(char) * (data->length + 1)); + strncpy(str, (char *)data->data, data->length); + str[data->length] = '\0'; if (sel->datacb) { @@ -791,10 +795,11 @@ notify_handler_text(Cnp_Selection *sel, Ecore_X_Event_Selection_Notify *notify) } cnp_debug("Notify handler text %d %d %p\n", data->format,data->length, data->data); - str = _elm_util_text_to_mkup((const char *) data->data); + mkupstr = _elm_util_text_to_mkup((const char *) str); cnp_debug("String is %s (from %s)\n", str, data->data); - _elm_entry_entry_paste(sel->requestwidget, str); + _elm_entry_entry_paste(sel->requestwidget, mkupstr); free(str); + free(mkupstr); return 0; }