Assert (almost all) signals have no attached listeners on destroy

This commit is contained in:
Kirill Primak 2024-11-22 20:32:32 +03:00
parent b03b05d2b3
commit 8f56f7ca43
79 changed files with 518 additions and 9 deletions

View file

@ -28,6 +28,7 @@ void wlr_allocator_init(struct wlr_allocator *alloc,
.impl = impl,
.buffer_caps = buffer_caps,
};
wl_signal_init(&alloc->events.destroy);
}
@ -173,6 +174,9 @@ void wlr_allocator_destroy(struct wlr_allocator *alloc) {
return;
}
wl_signal_emit_mutable(&alloc->events.destroy, NULL);
assert(wl_list_empty(&alloc->events.destroy.listener_list));
alloc->impl->destroy(alloc);
}