forked from enlightenment/enlightenment
fix segv with comp post_updates
if we keep a list of e clients... either make sure any client deleted is removed from the list on deletion... OR use ref/unref to ensure it stays alive as long as it's in the list.
This commit is contained in:
parent
6802ae750d
commit
3e17092db8
|
@ -352,7 +352,10 @@ _e_comp_cb_update(E_Comp *c)
|
|||
/* clear update flag */
|
||||
e_comp_object_render_update_del(ec->frame);
|
||||
if (_e_comp_client_update(ec))
|
||||
c->post_updates = eina_list_append(c->post_updates, ec);
|
||||
{
|
||||
c->post_updates = eina_list_append(c->post_updates, ec);
|
||||
e_object_ref(E_OBJECT(ec));
|
||||
}
|
||||
}
|
||||
_e_comp_fps_update(c);
|
||||
if (conf->fps_show)
|
||||
|
|
|
@ -48,6 +48,7 @@ _e_comp_canvas_render_post(void *data, Evas *e EINA_UNUSED, void *event_info EIN
|
|||
//INF("POST %p", ec);
|
||||
if (!e_object_is_del(E_OBJECT(ec)))
|
||||
e_pixmap_image_clear(ec->pixmap, 1);
|
||||
e_object_unref(E_OBJECT(ec));
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue