diff --git a/legacy/evas/src/lib/canvas/evas_layer.c b/legacy/evas/src/lib/canvas/evas_layer.c index afb46f9dea..4e39d8f791 100644 --- a/legacy/evas/src/lib/canvas/evas_layer.c +++ b/legacy/evas/src/lib/canvas/evas_layer.c @@ -59,7 +59,8 @@ evas_layer_pre_free(Evas_Layer *lay) Evas_Object *obj; obj = (Evas_Object *)l; - if (!obj->smart.parent) evas_object_del(obj); + if ((!obj->smart.parent) && (!obj->delete_me)) + evas_object_del(obj); } } diff --git a/legacy/evas/src/lib/canvas/evas_object_main.c b/legacy/evas/src/lib/canvas/evas_object_main.c index 7b947216cc..c8a532bb37 100644 --- a/legacy/evas/src/lib/canvas/evas_object_main.c +++ b/legacy/evas/src/lib/canvas/evas_object_main.c @@ -426,6 +426,7 @@ evas_object_del(Evas_Object *obj) MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ); return; MAGIC_CHECK_END(); + if (obj->delete_me) return; if (obj->name) evas_object_name_set(obj, NULL);