project wide: clean up event listeners on shutdown (part 2)

This commit is contained in:
tokyo4j 2025-03-13 17:39:23 +09:00 committed by Johan Malm
parent b8568c3258
commit 140e913c44
3 changed files with 6 additions and 2 deletions

View file

@ -1504,8 +1504,6 @@ cursor_init(struct seat *seat)
void cursor_finish(struct seat *seat)
{
/* TODO: either clean up all the listeners or none of them */
wl_list_remove(&seat->cursor_motion.link);
wl_list_remove(&seat->cursor_motion_absolute.link);
wl_list_remove(&seat->cursor_button.link);

View file

@ -762,6 +762,10 @@ server_finish(struct server *server)
wl_list_remove(&server->new_constraint.link);
wl_list_remove(&server->output_power_manager_set_mode.link);
wl_list_remove(&server->tearing_new_object.link);
if (server->drm_lease_request.notify) {
wl_list_remove(&server->drm_lease_request.link);
server->drm_lease_request.notify = NULL;
}
wlr_backend_destroy(server->backend);
wlr_allocator_destroy(server->allocator);

View file

@ -469,6 +469,8 @@ destroy_workspace(struct workspace *workspace)
wlr_scene_node_destroy(&workspace->tree->node);
zfree(workspace->name);
wl_list_remove(&workspace->link);
wl_list_remove(&workspace->on_cosmic.activate.link);
wl_list_remove(&workspace->on_ext.activate.link);
lab_cosmic_workspace_destroy(workspace->cosmic_workspace);
lab_ext_workspace_destroy(workspace->ext_workspace);