From 2e83aca728e467594a944b033974e635554f5d54 Mon Sep 17 00:00:00 2001 From: Matthew Waters Date: Fri, 27 Jun 2014 00:09:08 +1000 Subject: videoaggregator: fix a refcount error when keeping the buffer We take a ref on the pad's buffer at the beginning so we need to unref when we are done in all cases. --- gst-libs/gst/video/gstvideoaggregator.c | 2 ++ 1 file changed, 2 insertions(+) (limited to 'gst-libs') diff --git a/gst-libs/gst/video/gstvideoaggregator.c b/gst-libs/gst/video/gstvideoaggregator.c index 6010a52f5..2bc7e44f8 100644 --- a/gst-libs/gst/video/gstvideoaggregator.c +++ b/gst-libs/gst/video/gstvideoaggregator.c @@ -806,6 +806,7 @@ gst_videoaggregator_reset (GstVideoAggregator * vagg) GstVideoAggregatorPad *p = l->data; gst_buffer_replace (&p->buffer, NULL); + gst_buffer_replace (&p->queued, NULL); p->start_time = -1; p->end_time = -1; @@ -959,6 +960,7 @@ gst_videoaggregator_fill_queues (GstVideoAggregator * vagg, } else if (start_time >= output_end_time) { GST_DEBUG_OBJECT (pad, "Keeping buffer until %" GST_TIME_FORMAT, GST_TIME_ARGS (start_time)); + gst_buffer_unref (buf); eos = FALSE; } else { GST_DEBUG_OBJECT (pad, "Too old buffer -- dropping"); -- cgit v1.2.3