From: Eunhae Choi Date: Thu, 26 Jul 2018 10:53:01 +0000 (+0900) Subject: multiqueue: recheck buffering status after flushed X-Git-Tag: accepted/tizen/unified/20180801.144908~2 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=caf3415247f77e050af0e79433483ca510406b69;p=platform%2Fupstream%2Fgstreamer.git multiqueue: recheck buffering status after flushed Change-Id: I71b1e166d148743bd6b2fd7a5306191120a0a820 --- diff --git a/plugins/elements/gstmultiqueue.c b/plugins/elements/gstmultiqueue.c index b9ec4b5..d9270ac 100644 --- a/plugins/elements/gstmultiqueue.c +++ b/plugins/elements/gstmultiqueue.c @@ -2752,8 +2752,20 @@ gst_multi_queue_sink_event (GstPad * pad, GstObject * parent, GstEvent * event) res = gst_pad_push_event (sq->srcpad, event); gst_single_queue_flush (mq, sq, FALSE, FALSE); - goto done; +#ifdef TIZEN_FEATURE_MQ_MODIFICATION + /* need to reset the buffering data after seeking */ + GList *tmp; + tmp = mq->queues; + while (tmp) { + GstSingleQueue *q = (GstSingleQueue *) tmp->data; + if (q->flushing) + goto done; + tmp = g_list_next (tmp); + } + recheck_buffering_status (mq); +#endif + goto done; case GST_EVENT_SEGMENT: sref = gst_event_ref (event); break;