tree/container: remove output_{enter,leave} listeners in destroy

0d6cc471e9
added an assert that all signals are clear when destroying a
wlr_scene_buffer, which is currently triggering due to sway not removing
the output_enter and output_leave listeners on the container before
calling wlr_scene_node_destroy on output_handler. Remove the listeners
before wlr_scene_node_destroy is called.
This commit is contained in:
Violet Purcell 2024-11-22 17:31:15 -05:00 committed by Kirill Primak
parent bbadf9b8b1
commit 4faf0f9098

View file

@ -508,6 +508,8 @@ void container_destroy(struct sway_container *con) {
if (con->view && con->view->container == con) {
con->view->container = NULL;
wl_list_remove(&con->output_enter.link);
wl_list_remove(&con->output_leave.link);
wlr_scene_node_destroy(&con->output_handler->node);
if (con->view->destroying) {
view_destroy(con->view);