mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-12 19:36:38 +00:00
225d6b7e11
This fixes a possible deadlock between gst_v4l2_video_dec_change_state and gst_v4l2_video_dec_loop on the buffer pool. When stopping capture, the flushing state of the v4l2 capture buffer pool gets reverted in the processing loop after it was set via gst_v4l2_object_unlock (self->v4l2capture) (in gst_v4l2_video_dec_change_state). As a result, gst_v4l2_video_dec_loop does not return and consequently, gst_pad_stop_task gets stuck waiting for the GST_PAD_STREAM_LOCK. To circumvent this, skip acquiring the buffer pool if stopping capture. Suggested-by: Nicolas Dufresne <nicolas.dufresne@collabora.com> Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7958> |
||
---|---|---|
.. | ||
directsound | ||
oss | ||
oss4 | ||
osxaudio | ||
osxvideo | ||
rpicamsrc | ||
v4l2 | ||
waveform | ||
ximage | ||
meson.build |