hermet pushed a commit to branch master.

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

commit db68e45fede1fa9056ebfcac8ebd7ca320a28a54
Author: Hermet Park <[email protected]>
Date:   Wed Nov 20 14:09:00 2019 +0900

    vector container: don't copy composite target duplicatedly.
    
    Container copied composite target in prior to duplicate children,
    
    the composite target is one of the children, it should skip to handle it 
again.
---
 src/lib/evas/canvas/efl_canvas_vg_container.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/src/lib/evas/canvas/efl_canvas_vg_container.c 
b/src/lib/evas/canvas/efl_canvas_vg_container.c
index 471ea3dd6c..c6fe0c4af2 100644
--- a/src/lib/evas/canvas/efl_canvas_vg_container.c
+++ b/src/lib/evas/canvas/efl_canvas_vg_container.c
@@ -390,7 +390,7 @@ _efl_canvas_vg_container_efl_object_parent_set(Eo *obj,
 
 EOLIAN static Efl_VG *
 _efl_canvas_vg_container_efl_duplicate_duplicate(const Eo *obj,
-                                             Efl_Canvas_Vg_Container_Data *pd)
+                                                 Efl_Canvas_Vg_Container_Data 
*pd)
 {
    Eina_List *l;
    Efl_VG *child;
@@ -410,6 +410,9 @@ _efl_canvas_vg_container_efl_duplicate_duplicate(const Eo 
*obj,
    //Copy Children
    EINA_LIST_FOREACH(pd->children, l, child)
      {
+        //Skip, We already copied composite target before.
+        if (child == pd->comp_target) continue;
+
         Efl_VG *eo = efl_duplicate(child);
         efl_parent_set(eo, container);
      }

-- 


Reply via email to