diff --git a/src/bin/e_icon_canvas.c b/src/bin/e_icon_canvas.c index d3e58591b..0d2dd10ba 100644 --- a/src/bin/e_icon_canvas.c +++ b/src/bin/e_icon_canvas.c @@ -293,10 +293,14 @@ e_icon_canvas_unpack(Evas_Object *obj) if(!obj) return; li = evas_object_data_get(obj, "e_icon_canvas_data"); if (!li) return; + sd = li->sd; sd->items = evas_list_remove(sd->items, li); - li->tile->items = evas_list_remove(li->tile->items, li); _e_icon_canvas_disown(obj); + + if (!li->tile) return; + if (!li->tile->items) return; + li->tile->items = evas_list_remove(li->tile->items, li); } void