input: check that the new focus surface has a valid resource

Here too we must make sure the surface has a valid resource, as
there are some (xwayland, surfaces created by the shell) that
don't have it.
Fix a Weston crash when setting a mpv window fullscreen on drm.
This commit is contained in:
Giulio Camuffo 2013-09-23 12:33:39 +02:00 committed by Kristian Høgsberg
parent 7f951e1117
commit 0481054c58

View File

@ -503,7 +503,7 @@ weston_pointer_set_focus(struct weston_pointer *pointer,
pointer->focus_serial = serial;
}
if (kbd && surface && kbd->focus != pointer->focus) {
if (kbd && surface && surface->resource && kbd->focus != pointer->focus) {
struct wl_client *surface_client =
wl_resource_get_client(surface->resource);
send_modifiers_to_client_in_list(surface_client,