From a26efaeb57f7d2e196d002480952312c20d02267 Mon Sep 17 00:00:00 2001 From: Marcel Hollerbach Date: Tue, 3 Sep 2019 10:55:40 +0200 Subject: [PATCH] efl_ui_position_manager_grid: honor NULL objects its sometimes possible that there is a NULL object returned by the batch call. We should not just access the NULL element. Additionally, if NULL was returned during visibility setting, we need to set visibility here. Reviewed-by: Mike Blumenkrantz Differential Revision: https://phab.enlightenment.org/D9827 --- src/lib/elementary/efl_ui_position_manager_grid.c | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/src/lib/elementary/efl_ui_position_manager_grid.c b/src/lib/elementary/efl_ui_position_manager_grid.c index 92d495efc4..ba48f376cc 100644 --- a/src/lib/elementary/efl_ui_position_manager_grid.c +++ b/src/lib/elementary/efl_ui_position_manager_grid.c @@ -302,8 +302,12 @@ _position_items_vertical(Eo *obj EINA_UNUSED, Efl_Ui_Position_Manager_Grid_Data { _place_grid_item(&geom, pd, x, y); } - - efl_gfx_entity_geometry_set(obj_buffer[buffer_id].entity, geom); + Efl_Gfx_Entity *item = obj_buffer[buffer_id].entity; + if (item) + { + efl_gfx_entity_geometry_set(item, geom); + efl_gfx_entity_visible_set(item, EINA_TRUE); + } } } @@ -369,7 +373,12 @@ _position_items_horizontal(Eo *obj EINA_UNUSED, Efl_Ui_Position_Manager_Grid_Dat { _place_grid_item(&geom, pd, x, y); } - efl_gfx_entity_geometry_set(obj_buffer[buffer_id].entity, geom); + Efl_Gfx_Entity *item = obj_buffer[buffer_id].entity; + if (item) + { + efl_gfx_entity_geometry_set(item, geom); + efl_gfx_entity_visible_set(item, EINA_TRUE); + } } }