diff options
author | Matthew Waters <ystreet00@gmail.com> | 2014-06-27 00:09:08 +1000 |
---|---|---|
committer | Matthew Waters <ystreet00@gmail.com> | 2014-06-27 00:14:03 +1000 |
commit | 2e83aca728e467594a944b033974e635554f5d54 (patch) | |
tree | 1117948c893ad712f660c9c6e9b072bd58806992 /gst-libs | |
parent | c46b63d44ebdd86325f9518a255d2fc2da9b13e6 (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.c | 2 |
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"); |