queue: protect against lost wakeups for iterm_del condition

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/633>
This commit is contained in:
Camilo Celis Guzman 2020-06-04 17:50:01 +02:00 committed by GStreamer Merge Bot
parent 80c753c4a9
commit d04b27f4ec

View file

@ -1242,10 +1242,10 @@ gst_queue_chain_buffer_or_list (GstPad * pad, GstObject * parent,
"queue is full, waiting for free space");
/* don't leak. Instead, wait for space to be available */
do {
/* for as long as the queue is filled, wait till an item was deleted. */
/* for as long as the queue is filled, wait till an item was deleted. */
while (gst_queue_is_filled (queue)) {
GST_QUEUE_WAIT_DEL_CHECK (queue, out_flushing);
} while (gst_queue_is_filled (queue));
};
GST_CAT_DEBUG_OBJECT (queue_dataflow, queue, "queue is not full");