diff options
author | Simon Ser <contact@emersion.fr> | 2024-03-04 13:51:27 +0100 |
---|---|---|
committer | Simon Ser <contact@emersion.fr> | 2024-03-14 11:59:25 +0100 |
commit | 2b08e79061db583d0ffe46114c48f958a0d3e6ed (patch) | |
tree | d7acc07650732b38ee0765f57e3b470c6219a5ab /sway | |
parent | Force bilinear scaling when scaling down (diff) | |
download | sway-2b08e79061db583d0ffe46114c48f958a0d3e6ed.tar.gz sway-2b08e79061db583d0ffe46114c48f958a0d3e6ed.tar.zst sway-2b08e79061db583d0ffe46114c48f958a0d3e6ed.zip |
server: fix wlr_seat use-after-free on exit
Same as [1].
I originally tried to properly handle seat destruction, but that
turned out to be a can of worms [2].
[1]: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/4590
[2]: https://github.com/swaywm/sway/pull/8034
Diffstat (limited to 'sway')
-rw-r--r-- | sway/server.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/sway/server.c b/sway/server.c index 2a0dc1e7..94d0fae2 100644 --- a/sway/server.c +++ b/sway/server.c | |||
@@ -399,6 +399,7 @@ void server_fini(struct sway_server *server) { | |||
399 | wlr_xwayland_destroy(server->xwayland.wlr_xwayland); | 399 | wlr_xwayland_destroy(server->xwayland.wlr_xwayland); |
400 | #endif | 400 | #endif |
401 | wl_display_destroy_clients(server->wl_display); | 401 | wl_display_destroy_clients(server->wl_display); |
402 | wlr_backend_destroy(server->backend); | ||
402 | wl_display_destroy(server->wl_display); | 403 | wl_display_destroy(server->wl_display); |
403 | list_free(server->dirty_nodes); | 404 | list_free(server->dirty_nodes); |
404 | } | 405 | } |