ensure that a deskmirror object does not orphan child objects
authorMike Blumenkrantz <zmike@osg.samsung.com>
Thu, 19 Nov 2015 20:52:01 +0000 (15:52 -0500)
committerMike Blumenkrantz <zmike@osg.samsung.com>
Thu, 19 Nov 2015 20:52:01 +0000 (15:52 -0500)
ref T2846, T2830

src/bin/e_deskmirror.c

index 216f451..b9017fb 100644 (file)
@@ -567,9 +567,13 @@ _comp_object_check(Mirror *m)
 
    evas_object_geometry_get(m->comp_object, NULL, NULL, &w, &h);
    if ((w < 2) || (h < 2)) return EINA_FALSE;
-   m->mirror = e_comp_object_util_mirror_add(m->comp_object);
-   if (!m->mirror) return EINA_FALSE;
+   if (!m->mirror)
+     {
+        m->mirror = e_comp_object_util_mirror_add(m->comp_object);
+        if (!m->mirror) return EINA_FALSE;
+     }
    evas_object_smart_callback_del(m->comp_object, "dirty", _comp_object_dirty);
+   if (m->added) return EINA_TRUE;
    evas_object_name_set(m->mirror, "m->mirror");
    _e_deskmirror_mirror_setup(m);
    return EINA_TRUE;