multiqueue: Protect reconfiguration with a lock
authorJan Schmidt <jan@centricular.com>
Tue, 27 Sep 2022 17:08:39 +0000 (03:08 +1000)
committerGStreamer Marge Bot <gitlab-merge-bot@gstreamer-foundation.org>
Wed, 16 Nov 2022 14:01:46 +0000 (14:01 +0000)
commitd3a66f9851eacc8dc2ac3e6d13ad139952134400
tree98c837611c798e09f102ea0dc4c732f0d9dd444a
parent4b8f411c5d94ed956521c358c6052f7ff59af06a
multiqueue: Protect reconfiguration with a lock

Add a lock to prevent overlapping of request and release
pads, to close a race where multiqueue might try and
add a slot with an id that hasn't quite finished being
removed yet by another thread.

Fix for https://gitlab.freedesktop.org/bilboed/gstreamer/-/issues/5
and https://gitlab.freedesktop.org/bilboed/gstreamer/-/issues/11

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2784>
subprojects/gstreamer/plugins/elements/gstmultiqueue.c
subprojects/gstreamer/plugins/elements/gstmultiqueue.h