Change-Id: I616b62ab828604a902b7845e5d77966998c4d84f
/* if the client owns the focused surface, we need to send an enter */
focused = e_client_focused_get();
- if (!focused) return;
+ if ((!focused) || (e_object_is_del(E_OBJECT(focused))) ||
+ (!focused->comp_data) || (!focused->comp_data->surface)) return;
if (client != wl_resource_get_client(focused->comp_data->surface)) return;
e_comp_wl->kbd.focused = eina_list_append(e_comp_wl->kbd.focused, res);
}
/* release the helded buffer by e_client */
- e_comp_wl_buffer_reference(&cp->client->comp_data->buffer_ref, NULL);
+ if (cp->client->comp_data)
+ e_comp_wl_buffer_reference(&cp->client->comp_data->buffer_ref, NULL);
/* composite object clear */
e_comp_object_clear(cp->client->frame);