gst-plugins-rs/utils/fallbackswitch
Jan Alexander Steffens (heftig) d27e279272
fallbackswitch: Move active_sinkpad out of State into its own Mutex
As described in issue #200, we hold the srcpad's stream lock in some
situations where we notify the `active-pad` property.

If there's a handler installed it will most likely attempt to read the
property, which had to take the `state` lock. Another thread could
already be holding this lock and attempting to obtain the srcpad's
stream lock. This resulted in a deadlock.

To avoid this, move the `active_sinkpad` field into its own Mutex, which
we never hold for long.

Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/issues/200
2022-05-12 16:52:07 +02:00
..
examples fallbackswitch: Replace with priorityswitch 2022-04-05 18:52:31 +03:00
src fallbackswitch: Move active_sinkpad out of State into its own Mutex 2022-05-12 16:52:07 +02:00
tests fallbackswitch: Fix racy manual switching test 2022-04-18 16:13:00 +03:00
build.rs fallbackswitch: Remove bundled aggregator copy and require GStreamer 1.18 2021-10-17 17:35:45 +03:00
Cargo.toml Update minimum supported GStreamer version to 1.14 2022-04-07 12:41:54 +03:00
LICENSE-MPL-2.0 Re-license LGPL-2.1 plugins to MPL-2 2022-01-15 21:05:11 +02:00