wayland/src
Simon Ser 962aefda42 server: introduce wl_signal_emit_mutable
wl_signal_emit doesn't handle well situations where a listener removes
another listener. This can happen in practice: wlroots and Weston [1]
both have private helpers to workaround this defect.

wl_signal_emit can't be fixed without breaking the API. Instead,
introduce a new function. Callers need to make sure to always remove
listeners when they are free'd.

[1]: https://gitlab.freedesktop.org/wayland/weston/-/merge_requests/457

Signed-off-by: Simon Ser <contact@emersion.fr>
Signed-off-by: Alexandros Frantzis <alexandros.frantzis@collabora.com>
2022-03-28 19:06:16 +00:00
..
.gitignore ignore: Add *.dtd.embed 2016-03-10 22:24:20 -08:00
connection.c util: set errno in wl_map_reserve_new() 2022-03-25 09:43:53 +00:00
embed.py build: replace assembly embedding with Python script 2021-05-10 22:08:45 +00:00
event-loop.c Use zalloc for structs 2022-02-05 14:25:19 +00:00
meson.build build: use get_variable(pkgconfig) instead of get_pkgconfig_variable() 2022-03-25 09:14:08 +00:00
scanner.c scanner: Use the new atomic marshal/destroy function 2021-08-07 11:53:23 +00:00
wayland-client-core.h client: Add new proxy marshalling functions with flags 2021-08-07 11:53:23 +00:00
wayland-client.c client, server: handle wl_map_insert_new() failures 2022-03-25 09:43:53 +00:00
wayland-client.h doc: Formalize file comment in wayland-client.h, wayland-server.h 2016-05-11 11:03:27 -07:00
wayland-os.c Detect FreeBSD versions with broken MSG_CMSG_CLOEXEC 2021-09-10 11:35:54 +00:00
wayland-os.h shm: Add mmap+memmove fallback if mremap() does not exist 2021-09-10 11:35:54 +00:00
wayland-private.h debug: Fix printing of new ids 2021-11-02 11:27:51 +00:00
wayland-server-core.h server: introduce wl_signal_emit_mutable 2022-03-28 19:06:16 +00:00
wayland-server-private.h Move wl_priv_signal to wayland-server-private.h 2019-11-06 08:24:14 -06:00
wayland-server.c server: introduce wl_signal_emit_mutable 2022-03-28 19:06:16 +00:00
wayland-server.h wayland-server: Finally remove deprecated struct wl_buffer definition 2018-07-25 12:08:16 -05:00
wayland-shm.c Use zalloc for structs 2022-02-05 14:25:19 +00:00
wayland-util.c util: set errno in wl_map_insert_at() 2022-03-25 09:43:53 +00:00
wayland-util.h util: fix compiler warning 2020-02-24 11:02:44 +00:00
wayland-version.h.in src: Update boilerplate from MIT X11 license to MIT Expat license 2015-06-12 15:31:24 -07:00