util: add wlr_output_destroy_safe

This adds a generic helper to destory transient globals.

See [1]. This patch depends on [2] and [3].

[1]: https://gitlab.freedesktop.org/wayland/wayland/issues/10
[2]: https://gitlab.freedesktop.org/wayland/wayland/merge_requests/28
[3]: https://gitlab.freedesktop.org/wayland/wayland/merge_requests/30
This commit is contained in:
Simon Ser 2020-02-03 16:39:27 +01:00 committed by Drew DeVault
parent 2bad34e024
commit 29726e6816
4 changed files with 60 additions and 0 deletions

15
include/util/global.h Normal file
View file

@ -0,0 +1,15 @@
#ifndef UTIL_GLOBAL_H
#define UTIL_GLOBAL_H
#include <wayland-server-core.h>
/**
* Destroy a transient global.
*
* Globals that are created and destroyed on the fly need special handling to
* prevent race conditions with wl_registry. Use this function to destroy them.
*/
void wlr_global_destroy_safe(struct wl_global *global,
struct wl_display *display);
#endif