Commit b40599f6 authored by Sebastian Dröge's avatar Sebastian Dröge 🍵

multiqueue: Clean up after the streaming thread has stopped

https://bugzilla.gnome.org/show_bug.cgi?id=705835
parent d7c3be22
......@@ -1474,7 +1474,19 @@ gst_multi_queue_sink_activate_mode (GstPad * pad, GstObject * parent,
sq->last_query = FALSE;
g_cond_signal (&sq->query_handled);
gst_data_queue_set_flushing (sq->queue, TRUE);
/* Wait until streaming thread has finished */
if (mq)
GST_MULTI_QUEUE_MUTEX_UNLOCK (mq);
GST_PAD_STREAM_LOCK (pad);
if (mq)
GST_MULTI_QUEUE_MUTEX_LOCK (mq);
gst_data_queue_flush (sq->queue);
if (mq)
GST_MULTI_QUEUE_MUTEX_UNLOCK (mq);
GST_PAD_STREAM_UNLOCK (pad);
if (mq)
GST_MULTI_QUEUE_MUTEX_LOCK (mq);
}
res = TRUE;
break;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment