mirror of
https://gitlab.freedesktop.org/wlroots/wlroots.git
synced 2026-02-04 21:00:24 +01:00
The old approach of using a signal is fundamentally broken for a common usecase: When the waiter is ready, it's common to immediately finish and free any resources associated with it. Because of the semantics of wl_signal_emit_mutable() this is UB. wl_signal_emit_mutable() always excepts that the waiter hasn't been freed until the signal has finished being emitted. Instead of over engineering the solution, let's just add a callback required by wlr_drm_syncobj_timeline_waiter_init(). In this callback, the implementation is free to finish() or free() any resource it likes. |
||
|---|---|---|
| .. | ||
| backend | ||
| interfaces | ||
| render | ||
| types | ||
| util | ||
| wlr | ||
| xcursor | ||
| xwayland | ||
| meson.build | ||