From 2929f0f8ddd50b19fd9234e73d4aac6f83704bfb Mon Sep 17 00:00:00 2001 From: Dorota Czaplejewicz Date: Wed, 22 Aug 2018 12:46:25 +0200 Subject: [PATCH] wlr_input_device: fix keyboard destruction After destroying a keyboard input device, seat's listeners could still be pointing to destroyed wlr_input_device signals. This patch makes sure the references are removed while the input device is being destroyed. --- types/seat/wlr_seat_keyboard.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/types/seat/wlr_seat_keyboard.c b/types/seat/wlr_seat_keyboard.c index 8c1b56e1..e8ea300e 100644 --- a/types/seat/wlr_seat_keyboard.c +++ b/types/seat/wlr_seat_keyboard.c @@ -110,7 +110,7 @@ static void handle_keyboard_repeat_info(struct wl_listener *listener, static void handle_keyboard_destroy(struct wl_listener *listener, void *data) { struct wlr_seat_keyboard_state *state = wl_container_of(listener, state, keyboard_destroy); - state->keyboard = NULL; + wlr_seat_set_keyboard(state->seat, NULL); } void wlr_seat_set_keyboard(struct wlr_seat *seat,