From: hermet Date: Fri, 6 Apr 2012 05:58:50 +0000 (+0000) Subject: elementary/cnp - [E-devel] [Patch] elm_cnp notify_handler patch X-Git-Tag: sbs/armel/slp2-target~36^2~35 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=b7ab9b2ec152d75dce1af663243d95fddb5e8e52;p=framework%2Fuifw%2Felementary.git 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 git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/elementary@69942 7cbeb6ba-43b4-40fd-8cce-4c39aea84d33 --- diff --git a/src/lib/elm_cnp.c b/src/lib/elm_cnp.c index 6c9728a..ab1a7fe 100644 --- a/src/lib/elm_cnp.c +++ b/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; }