summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCedric BAIL <cedric@osg.samsung.com>2018-05-15 14:53:13 -0700
committerCedric BAIL <cedric@osg.samsung.com>2018-05-22 16:55:09 -0700
commit5bede2e7f9a9bf8a36110eae5ec0c9300f4ec64e (patch)
tree72b72c389e95aecac7560b6a10a3cfa9d63b42e9
parent58df21358985f352a4e8bf8f0bc8ba2b536e9fad (diff)
downloadefl-5bede2e7f9a9bf8a36110eae5ec0c9300f4ec64e.tar.gz
evas: do not crash if constructor fail and invalidate is run on a partial object.
-rw-r--r--src/lib/evas/canvas/evas_object_main.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/lib/evas/canvas/evas_object_main.c b/src/lib/evas/canvas/evas_object_main.c
index 74f4d2b074..8e714d0090 100644
--- a/src/lib/evas/canvas/evas_object_main.c
+++ b/src/lib/evas/canvas/evas_object_main.c
@@ -1317,8 +1317,8 @@ _efl_canvas_object_efl_object_invalidate(Eo *eo_obj, Evas_Object_Protected_Data
}
}
- if (obj->cur->clipper) evas_object_clip_unset(eo_obj);
- _efl_canvas_object_clip_prev_reset(obj, EINA_FALSE);
+ if (obj->cur && obj->cur->clipper) evas_object_clip_unset(eo_obj);
+ if (obj->prev) _efl_canvas_object_clip_prev_reset(obj, EINA_FALSE);
//Free event animations
while (obj->event_anims)
@@ -1332,7 +1332,7 @@ _efl_canvas_object_efl_object_invalidate(Eo *eo_obj, Evas_Object_Protected_Data
_event_anim_free(event_anim, obj);
}
- evas_object_map_set(eo_obj, NULL);
+ if (obj->map) evas_object_map_set(eo_obj, NULL);
if (obj->is_smart) evas_object_smart_del(eo_obj);
evas_object_change(eo_obj, obj);