The crash occurs when trying to destroy wl_client which is disconnected.
In this case, E_Client was already deleted but wl_callback resource is not
destroyed because it is in ec->comp_data->pending.frames list and E_Client
didn't clean up its pending.frames list when freeing.
Change-Id: I7371dfaad38cfe757d0477674baa10e981bf4591
E_Client *ec;
if (!(ec = wl_resource_get_user_data(resource))) return;
+ if (e_object_is_del(E_OBJECT(ec))) return;
ec->comp_data->frames =
eina_list_remove(ec->comp_data->frames, resource);
EINA_LIST_FREE(ec->comp_data->frames, cb)
wl_resource_destroy(cb);
+ EINA_LIST_FREE(ec->comp_data->pending.frames, cb)
+ wl_resource_destroy(cb);
+
if (ec->comp_data->surface)
wl_resource_set_user_data(ec->comp_data->surface, NULL);