summaryrefslogtreecommitdiff
path: root/gst-libs
diff options
context:
space:
mode:
authorMatthew Waters <ystreet00@gmail.com>2014-06-27 00:09:08 +1000
committerMatthew Waters <ystreet00@gmail.com>2014-06-27 00:14:03 +1000
commit2e83aca728e467594a944b033974e635554f5d54 (patch)
tree1117948c893ad712f660c9c6e9b072bd58806992 /gst-libs
parentc46b63d44ebdd86325f9518a255d2fc2da9b13e6 (diff)
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.
Diffstat (limited to 'gst-libs')
-rw-r--r--gst-libs/gst/video/gstvideoaggregator.c2
1 files changed, 2 insertions, 0 deletions
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");