From 5f37d95613bc6dc22d0ee5417804d75e9bc3fbf0 Mon Sep 17 00:00:00 2001 From: Olivier Crete Date: Wed, 14 May 2008 23:26:43 +0000 Subject: [MOVED FROM GST-P-FARSIGHT] Empty the queue on flush start 20080514232643-3e2dc-5a3f52a3fd3771164dea95bd14410d76b4fce2aa.gz --- gst/liveadder/liveadder.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/gst/liveadder/liveadder.c b/gst/liveadder/liveadder.c index d2345021..3ad1e192 100644 --- a/gst/liveadder/liveadder.c +++ b/gst/liveadder/liveadder.c @@ -437,6 +437,11 @@ gst_live_adder_flush_start (GstLiveAdder * adder) GST_OBJECT_LOCK (adder); /* mark ourselves as flushing */ adder->srcresult = GST_FLOW_WRONG_STATE; + + /* Empty the queue */ + g_queue_foreach (adder->buffers, (GFunc) gst_mini_object_unref, NULL); + while (g_queue_pop_head (adder->buffers)) {} + /* unlock clock, we just unschedule, the entry will be released by the * locking streaming thread. */ if (adder->clock_id) -- cgit v1.2.1