diff --git a/desktop-shell/shell.c b/desktop-shell/shell.c index 23af0dc2..43f45e36 100644 --- a/desktop-shell/shell.c +++ b/desktop-shell/shell.c @@ -2256,6 +2256,9 @@ get_focused_output(struct weston_compositor *compositor) static void desktop_shell_destroy_seat(struct shell_seat *shseat) { + wl_list_remove(&shseat->keyboard_focus_listener.link); + wl_list_remove(&shseat->caps_changed_listener.link); + wl_list_remove(&shseat->pointer_focus_listener.link); wl_list_remove(&shseat->seat_destroy_listener.link); wl_list_remove(&shseat->link);