From ed5255f51659445b50ee8b246f4ad4c51ca5f0f2 Mon Sep 17 00:00:00 2001 From: Hermet Park Date: Wed, 10 Jun 2020 20:30:19 +0900 Subject: [PATCH] evas stack: ++safe code. null check to prevent any crashes (just in case) --- src/lib/evas/canvas/evas_stack.x | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/lib/evas/canvas/evas_stack.x b/src/lib/evas/canvas/evas_stack.x index ddd3dffbcb..ae39b65695 100644 --- a/src/lib/evas/canvas/evas_stack.x +++ b/src/lib/evas/canvas/evas_stack.x @@ -152,6 +152,8 @@ _efl_canvas_object_efl_gfx_stack_stack_above(Eo *eo_obj, Evas_Object_Protected_D if (eo_obj == eo_above) return; if (_evas_object_intercept_call_evas(obj, EVAS_OBJECT_INTERCEPT_CB_STACK_ABOVE, 1, eo_above)) return; Evas_Object_Protected_Data *above = efl_data_scope_get(eo_above, EFL_CANVAS_OBJECT_CLASS); + if (!above) return; + if ((EINA_INLIST_GET(obj))->prev == EINA_INLIST_GET(above)) { evas_object_inform_call_restack(eo_obj, obj); @@ -242,6 +244,8 @@ _efl_canvas_object_efl_gfx_stack_stack_below(Eo *eo_obj, Evas_Object_Protected_D if (eo_obj == eo_below) return; if (_evas_object_intercept_call_evas(obj, EVAS_OBJECT_INTERCEPT_CB_STACK_BELOW, 1, eo_below)) return; Evas_Object_Protected_Data *below = efl_data_scope_get(eo_below, EFL_CANVAS_OBJECT_CLASS); + if (!below) return; + if ((EINA_INLIST_GET(obj))->next == EINA_INLIST_GET(below)) { evas_object_inform_call_restack(eo_obj, obj);