evas: add null check
authorJunsuChoi <jsuya.choi@samsung.com>
Mon, 9 Apr 2018 17:12:58 +0000 (10:12 -0700)
committerWonki Kim <wonki_.kim@samsung.com>
Tue, 10 Apr 2018 13:28:40 +0000 (22:28 +0900)
Summary:
this commit add null check.
In EVAS_OBJECT_DATA_SAFE_GET, if eo_obj is null, obj can also be null.
and In _efl_canvas_output_async_block() can return null.

Test Plan: N/A

Reviewers: woohyun, kimcinoo, cedric

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5870

Reviewed-by: Cedric BAIL <cedric@osg.samsung.com>
src/lib/evas/canvas/evas_object_main.c
src/lib/evas/canvas/evas_out.c

index a063970..350db6b 100644 (file)
@@ -189,6 +189,7 @@ _animation_intercept_hide(void *data, Evas_Object *eo_obj)
 {
    Event_Animation *event_anim = data;
    Evas_Object_Protected_Data *obj = EVAS_OBJECT_DATA_SAFE_GET(eo_obj);
+   if (!obj) return;
 
    if (event_anim->anim && obj->anim_player &&
       (event_anim->anim != efl_animation_player_animation_get(obj->anim_player)))
index 2c44b08..a1a35a1 100644 (file)
@@ -53,6 +53,7 @@ efl_canvas_output_add(Evas *canvas)
    r->changed = EINA_TRUE;
 
    e = _efl_canvas_output_async_block(r);
+   if (!e) return NULL;
    // Track this output in Evas
    e->outputs = eina_list_append(e->outputs, r);