gstreamer: queue2: forward flush events correctly

Wim Taymans wtay at kemper.freedesktop.org
Fri Apr 6 04:28:50 PDT 2012


Module: gstreamer
Branch: master
Commit: f06458aabc69c54cf2ea9b59179856cf31784a8f
URL:    http://cgit.freedesktop.org/gstreamer/gstreamer/commit/?id=f06458aabc69c54cf2ea9b59179856cf31784a8f

Author: Wim Taymans <wim.taymans at collabora.co.uk>
Date:   Fri Apr  6 12:24:22 2012 +0200

queue2: forward flush events correctly

We want to forward the flush events received on the sinkpad whenever the srcpad
is activated in pushmode, which can also happen when using the RINGBUFFER or
DOWNLOAD mode and downstream failed to activate us in pull mode.

---

 plugins/elements/gstqueue2.c |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/plugins/elements/gstqueue2.c b/plugins/elements/gstqueue2.c
index 02fd10a..dba86cd 100644
--- a/plugins/elements/gstqueue2.c
+++ b/plugins/elements/gstqueue2.c
@@ -2139,7 +2139,7 @@ gst_queue2_handle_sink_event (GstPad * pad, GstEvent * event)
     case GST_EVENT_FLUSH_START:
     {
       GST_CAT_LOG_OBJECT (queue_dataflow, queue, "received flush start event");
-      if (QUEUE_IS_USING_QUEUE (queue)) {
+      if (pad->mode == GST_ACTIVATE_PUSH) {
         /* forward event */
         gst_pad_push_event (queue->srcpad, event);
 
@@ -2171,7 +2171,7 @@ gst_queue2_handle_sink_event (GstPad * pad, GstEvent * event)
     {
       GST_CAT_LOG_OBJECT (queue_dataflow, queue, "received flush stop event");
 
-      if (QUEUE_IS_USING_QUEUE (queue)) {
+      if (pad->mode == GST_ACTIVATE_PUSH) {
         /* forward event */
         gst_pad_push_event (queue->srcpad, event);
 



More information about the gstreamer-commits mailing list