summaryrefslogtreecommitdiff
path: root/plugins/elements/gstqueue.c
diff options
context:
space:
mode:
authorWim Taymans <wim.taymans@gmail.com>2005-07-17 22:22:52 +0000
committerWim Taymans <wim.taymans@gmail.com>2005-07-17 22:22:52 +0000
commite5c9ef134186622ac5fadb37acb33aa32ef10aa4 (patch)
treee41943593a117952005a7a8d47290910f06b2b99 /plugins/elements/gstqueue.c
parentcb5b884215cac5e2049acb36e673d448e6013d8b (diff)
gst/gstqueue.c: Fix nasty refcount bug.
Original commit message from CVS: * gst/gstqueue.c: (gst_queue_handle_sink_event): Fix nasty refcount bug.
Diffstat (limited to 'plugins/elements/gstqueue.c')
-rw-r--r--plugins/elements/gstqueue.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/plugins/elements/gstqueue.c b/plugins/elements/gstqueue.c
index e251f2ee7..062976391 100644
--- a/plugins/elements/gstqueue.c
+++ b/plugins/elements/gstqueue.c
@@ -26,8 +26,6 @@
#include "gst_private.h"
#include "gstqueue.h"
-#include "gstscheduler.h"
-#include "gstpipeline.h"
#include "gstevent.h"
#include "gstinfo.h"
#include "gsterror.h"
@@ -471,7 +469,8 @@ gst_queue_handle_sink_event (GstPad * pad, GstEvent * event)
case GST_EVENT_FLUSH:
STATUS (queue, "received flush event");
/* forward event */
- gst_pad_event_default (pad, event);
+ gst_event_ref (event);
+ gst_pad_push_event (queue->srcpad, event);
if (GST_EVENT_FLUSH_DONE (event)) {
GST_QUEUE_MUTEX_LOCK;
queue->flushing = FALSE;
@@ -493,6 +492,7 @@ gst_queue_handle_sink_event (GstPad * pad, GstEvent * event)
gst_pad_pause_task (queue->srcpad);
GST_CAT_LOG_OBJECT (queue_dataflow, queue, "loop stopped");
}
+ gst_event_unref (event);
goto done;
case GST_EVENT_EOS:
STATUS (queue, "received EOS");