pipewire/spa
Pauli Virtanen cd166ac899 bluez5: don't use spa_invoke from data loop to main loop
spa_loop_invoke from data loop to main loop is not OK, as Wireplumber
currently runs its main loop with "pw_loop_enter(); pw_loop_iterate();
pw_loop_leave();" which causes the loop to be entered only when it is
processing an event.

In this case, part of the time the loop impl->thread==0, and calling
spa_loop_invoke() at such time causes the callback to be run from the
current thread, ie. in this case data loop which must not happen here.

Fix this by using eventfd instead, which is safe as the callback always
runs from the main loop.

Eventfd is also slightly more natural here, as multiple events will
group to the same mainloop cycle.
2024-04-13 15:54:22 +03:00
..
examples meson: fix compilation when spa-plugins is disabled 2024-02-06 11:50:54 +01:00
include node: add a cycle counter to the position 2024-04-04 20:47:43 +02:00
include-private/spa-private spa: move dbus helpers out of bluez plugin 2024-02-05 13:03:20 +00:00
plugins bluez5: don't use spa_invoke from data loop to main loop 2024-04-13 15:54:22 +03:00
tests Add GNU/Hurd support 2023-09-24 15:11:52 +00:00
tools spa: improve JSON error reporting in spa-json-dump 2024-03-27 15:57:39 +01:00
meson.build meson: fix compilation when spa-plugins is disabled 2024-02-06 11:50:54 +01:00