cedric pushed a commit to branch master.

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

commit cae57ff51bc5942a28f4f98c75183dc262df5008
Author: Youngbok Shin <youngb.s...@samsung.com>
Date:   Fri May 25 10:09:13 2018 -0700

    edje: don't give a wrong Edje data when an Edje object has group parts
    
    Summary:
    _edje_part_fetch() function gets an Edje which has the requested 
Edje_Real_Part.
    Basically, it gets main Edje of the given object.
    But, if a requested part is in a GROUP part, it gets the Edje of GROUP part.
    It shouldn't be passed to _edje_efl_text_text_get() function directly.
    @fix
    
    Test Plan: N/A
    
    Reviewers: herdsman, raster, cedric, woohyun
    
    Reviewed By: cedric
    
    Subscribers: #committers, zmike
    
    Tags: #efl
    
    Differential Revision: https://phab.enlightenment.org/D6149
    
    Reviewed-by: Cedric BAIL <ced...@osg.samsung.com>
---
 src/lib/edje/edje_util.c | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/src/lib/edje/edje_util.c b/src/lib/edje/edje_util.c
index 71577832aa..7ab54bb4bd 100644
--- a/src/lib/edje/edje_util.c
+++ b/src/lib/edje/edje_util.c
@@ -6340,6 +6340,14 @@ edje_object_part_text_get(const Edje_Object *obj, const 
char *part)
         ERR("Invalid call on a non-text or non-textblock part: '%s' in group 
'%s'", part, ed->group);
         return NULL;
      }
+
+   ed = _edje_fetch(obj);
+   if (!ed)
+     {
+        ERR("Failed to get Edje data from object: '%p'", obj);
+        return NULL;
+     }
+
    return _edje_efl_text_text_get(obj, ed, part, EINA_TRUE, EINA_FALSE);
 }
 

-- 


Reply via email to