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.
This commit is contained in:
Dorota Czaplejewicz 2018-08-22 12:46:25 +02:00 committed by emersion
parent d7c027d3e3
commit 2929f0f8dd

View file

@ -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) { static void handle_keyboard_destroy(struct wl_listener *listener, void *data) {
struct wlr_seat_keyboard_state *state = struct wlr_seat_keyboard_state *state =
wl_container_of(listener, state, keyboard_destroy); 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, void wlr_seat_set_keyboard(struct wlr_seat *seat,