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.
---
 src/input.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/input.c b/src/input.c
index 01ec059..1313b52 100644
--- a/src/input.c
+++ b/src/input.c
@@ -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,
-- 
1.8.4

_______________________________________________
wayland-devel mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/wayland-devel

Reply via email to