this fixes a crash caused by trying to an invalid frame resource which
is destroyed, but dangling from cached frame list.
Change-Id: I3cf097c4b493fec3090a06dfa7f766b934ac2873
_e_comp_wl_frame_cb_destroy(struct wl_resource *resource)
{
E_Client *ec;
+ E_Comp_Wl_Subsurf_Data *sdata;
if (!(ec = wl_resource_get_user_data(resource))) return;
if (e_object_is_del(E_OBJECT(ec)))
ec->comp_data->pending.frames =
eina_list_remove(ec->comp_data->pending.frames, resource);
}
+
+ sdata = ec->comp_data->sub.data;
+ if ((sdata) && (sdata->cached.frames))
+ {
+ sdata->cached.frames =
+ eina_list_remove(sdata->cached.frames, resource);
+ }
}
static void