|
|
@ -391,9 +391,16 @@ void destroy_wl_seats(struct wlr_wl_backend *wl) {
|
|
|
|
return;
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (seat->touch) {
|
|
|
|
|
|
|
|
wl_touch_destroy(seat->touch);
|
|
|
|
|
|
|
|
}
|
|
|
|
if (seat->pointer) {
|
|
|
|
if (seat->pointer) {
|
|
|
|
wl_pointer_destroy(seat->pointer);
|
|
|
|
wl_pointer_destroy(seat->pointer);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
if (seat->keyboard && !wl->started) {
|
|
|
|
|
|
|
|
// early termination will not be handled by input_device_destroy
|
|
|
|
|
|
|
|
wl_keyboard_destroy(seat->keyboard);
|
|
|
|
|
|
|
|
}
|
|
|
|
free(seat->name);
|
|
|
|
free(seat->name);
|
|
|
|
if (seat->wl_seat) {
|
|
|
|
if (seat->wl_seat) {
|
|
|
|
wl_seat_destroy(seat->wl_seat);
|
|
|
|
wl_seat_destroy(seat->wl_seat);
|
|
|
|