jihoon pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=fa344ea0bedfcc820b1ac1838704739f7938461a

commit fa344ea0bedfcc820b1ac1838704739f7938461a
Author: Jihoon Kim <jihoon48....@samsung.com>
Date:   Wed Apr 27 21:30:23 2016 +0900

    edje_entry: fix crash issue in case of no selection text
    
    @fix
---
 src/lib/edje/edje_entry.c | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/src/lib/edje/edje_entry.c b/src/lib/edje/edje_entry.c
index 64e8601..44c68ab 100644
--- a/src/lib/edje/edje_entry.c
+++ b/src/lib/edje/edje_entry.c
@@ -4524,6 +4524,7 @@ _edje_entry_imf_retrieve_selection_cb(void *data, 
Ecore_IMF_Context *ctx EINA_UN
    Edje *ed = data;
    Edje_Real_Part *rp = ed->focused_part;
    Entry *en = NULL;
+   const char *selection_text = NULL;
 
    if (!rp) return EINA_FALSE;
    if ((rp->type != EDJE_RP_TYPE_TEXT) ||
@@ -4536,9 +4537,12 @@ _edje_entry_imf_retrieve_selection_cb(void *data, 
Ecore_IMF_Context *ctx EINA_UN
 
    if (en->have_selection)
      {
+        selection_text = _edje_entry_selection_get(rp);
+
         if (text)
-          *text = strdup(_edje_entry_selection_get(rp));
-        return EINA_TRUE;
+          *text = selection_text ? strdup(selection_text) : NULL;
+
+        return selection_text ? EINA_TRUE : EINA_FALSE;
      }
    else
      return EINA_FALSE;

-- 


Reply via email to