diff --git a/src/wayland/meta-wayland-keyboard.c b/src/wayland/meta-wayland-keyboard.c index e07b6f29c..198996e2b 100644 --- a/src/wayland/meta-wayland-keyboard.c +++ b/src/wayland/meta-wayland-keyboard.c @@ -224,6 +224,9 @@ keyboard_handle_focus_surface_destroy (struct wl_listener *listener, void *data) wl_list_remove (&keyboard->focus_surface_listener.link); keyboard->focus_surface = NULL; + + wl_list_remove (&keyboard->focus_resource_listener.link); + keyboard->focus_resource = NULL; } static void diff --git a/src/wayland/meta-wayland-pointer.c b/src/wayland/meta-wayland-pointer.c index 88ced65e1..e554cb6a2 100644 --- a/src/wayland/meta-wayland-pointer.c +++ b/src/wayland/meta-wayland-pointer.c @@ -62,6 +62,9 @@ pointer_handle_focus_surface_destroy (struct wl_listener *listener, void *data) wl_list_remove (&pointer->focus_surface_listener.link); pointer->focus_surface = NULL; + + wl_list_remove (&pointer->focus_resource_listener.link); + pointer->focus_resource = NULL; } static void