summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHermet Park <hermetpark@gmail.com>2019-11-20 14:09:00 +0900
committerHermet Park <hermetpark@gmail.com>2019-11-20 14:11:08 +0900
commitdb68e45fede1fa9056ebfcac8ebd7ca320a28a54 (patch)
tree4d86ce70b6f49964e06e611e5862967753eed843
parentb1eb794a913e753929635aa80aeab8c2211db462 (diff)
downloadefl-db68e45fede1fa9056ebfcac8ebd7ca320a28a54.tar.gz
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.
-rw-r--r--src/lib/evas/canvas/efl_canvas_vg_container.c5
1 files changed, 4 insertions, 1 deletions
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);
}