discomfitor pushed a commit to branch efl-1.16.

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

commit 35ad4aaf532898fbd5129d9d1b1a2ce24ccb6c6c
Author: Mike Blumenkrantz <zm...@osg.samsung.com>
Date:   Mon Jan 11 18:27:35 2016 -0500

    edje: unswallow objects from parent edje when swallowing into new edje
    
    the passed edje is not guaranteed to be the one which owns the swallowed
    object at any given time, so get the current owner to ensure that the
    correct one is passed
    
    ref a645c8153f82c593920190416b8115b546b3668f
    
     #MasterOfAllBorkers
    
    @fix
---
 src/lib/edje/edje_util.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/src/lib/edje/edje_util.c b/src/lib/edje/edje_util.c
index aa77208..670b662 100644
--- a/src/lib/edje/edje_util.c
+++ b/src/lib/edje/edje_util.c
@@ -2857,10 +2857,13 @@ _edje_object_part_swallow(Eo *obj EINA_UNUSED, Edje 
*ed, const char *part, Evas_
    rpcur = evas_object_data_get(obj_swallow, "\377 edje.swallowing_part");
    if (rpcur)
      {
+        Edje *sed;
+
         /* the object is already swallowed in the requested part */
         if (rpcur == rp) return EINA_TRUE;
+        sed = evas_object_data_get(obj_swallow, ".edje");
         /* The object is already swallowed somewhere, unswallow it first */
-        edje_object_part_unswallow(ed->obj, obj_swallow);
+        edje_object_part_unswallow(sed->obj, obj_swallow);
      }
 
    if (!rp)

-- 


Reply via email to