From ed9ab21fdf9352b538d2ed4a2afac8644b611163 Mon Sep 17 00:00:00 2001 From: Hermet Park Date: Fri, 24 Apr 2020 21:11:27 +0900 Subject: [PATCH] canvas layer: +prevent null layer objects. --- src/lib/evas/canvas/evas_stack.x | 24 +++++++++++++----------- 1 file changed, 13 insertions(+), 11 deletions(-) diff --git a/src/lib/evas/canvas/evas_stack.x b/src/lib/evas/canvas/evas_stack.x index 333932f4bd..ddd3dffbcb 100644 --- a/src/lib/evas/canvas/evas_stack.x +++ b/src/lib/evas/canvas/evas_stack.x @@ -402,18 +402,20 @@ _evas_canvas_object_top_get(const Eo *eo_e EINA_UNUSED, Evas_Public_Data *e) //just in case if layer has no valid objects in the list. EINA_INLIST_REVERSE_FOREACH(list, layer) - if (layer->objects) break; - - list = EINA_INLIST_GET(layer->objects); - if (!list) return NULL; - - obj = (Evas_Object_Protected_Data *) list->last; - if (!obj) return NULL; - - while (obj) { - if (!obj->delete_me) return obj->object; - obj = evas_object_below_get_internal(obj); + if (!layer->objects) continue; + + list = EINA_INLIST_GET(layer->objects); + if (!list) return NULL; + + obj = (Evas_Object_Protected_Data *) list->last; + if (!obj) return NULL; + + while (obj) + { + if (!obj->delete_me) return obj->object; + obj = evas_object_below_get_internal(obj); + } } return NULL;