From 5dba27216c760b9d750a75209a228efef499d08f Mon Sep 17 00:00:00 2001 From: emersion Date: Fri, 23 Feb 2018 10:24:28 +0100 Subject: [PATCH] rootston: fix use-after-free in handle_keyboard_destroy --- rootston/seat.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rootston/seat.c b/rootston/seat.c index 38c26628..1b7d05c4 100644 --- a/rootston/seat.c +++ b/rootston/seat.c @@ -408,10 +408,10 @@ static void handle_keyboard_destroy(struct wl_listener *listener, void *data) { struct roots_keyboard *keyboard = wl_container_of(listener, keyboard, device_destroy); struct roots_seat *seat = keyboard->seat; - roots_keyboard_destroy(keyboard); wl_list_remove(&keyboard->device_destroy.link); wl_list_remove(&keyboard->keyboard_key.link); wl_list_remove(&keyboard->keyboard_modifiers.link); + roots_keyboard_destroy(keyboard); seat_update_capabilities(seat); }