forked from enlightenment/efl
evas_object_box: fix invalidator
the iteration over the content of the box did never cleanup the children pointer, which resulted in buggy behavior. This fixes test suite crashes with freeq debugging on. Differential Revision: https://phab.enlightenment.org/D11123
This commit is contained in:
parent
cf45cbf6dd
commit
59272b1530
|
@ -412,18 +412,16 @@ _evas_box_efl_canvas_group_group_add(Eo *eo_obj, Evas_Object_Box_Data *priv)
|
|||
EOLIAN static void
|
||||
_evas_box_efl_canvas_group_group_del(Eo *o, Evas_Object_Box_Data *priv)
|
||||
{
|
||||
Eina_List *l;
|
||||
|
||||
l = priv->children;
|
||||
while (l)
|
||||
while (priv->children)
|
||||
{
|
||||
Evas_Object_Box_Option *opt = l->data;
|
||||
Evas_Object_Box_Option *opt = eina_list_data_get(priv->children);
|
||||
|
||||
_evas_object_box_child_callbacks_unregister(opt->obj, o);
|
||||
evas_obj_box_internal_option_free(o, opt);
|
||||
l = eina_list_remove_list(l, l);
|
||||
priv->children = eina_list_remove_list(priv->children, priv->children);
|
||||
}
|
||||
|
||||
|
||||
if (priv->layout.data && priv->layout.free_data)
|
||||
priv->layout.free_data(priv->layout.data);
|
||||
|
||||
|
|
Loading…
Reference in New Issue