mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-23 18:21:04 +00:00
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.
This commit is contained in:
parent
c46b63d44e
commit
2e83aca728
1 changed files with 2 additions and 0 deletions
|
@ -806,6 +806,7 @@ gst_videoaggregator_reset (GstVideoAggregator * vagg)
|
||||||
GstVideoAggregatorPad *p = l->data;
|
GstVideoAggregatorPad *p = l->data;
|
||||||
|
|
||||||
gst_buffer_replace (&p->buffer, NULL);
|
gst_buffer_replace (&p->buffer, NULL);
|
||||||
|
gst_buffer_replace (&p->queued, NULL);
|
||||||
p->start_time = -1;
|
p->start_time = -1;
|
||||||
p->end_time = -1;
|
p->end_time = -1;
|
||||||
|
|
||||||
|
@ -959,6 +960,7 @@ gst_videoaggregator_fill_queues (GstVideoAggregator * vagg,
|
||||||
} else if (start_time >= output_end_time) {
|
} else if (start_time >= output_end_time) {
|
||||||
GST_DEBUG_OBJECT (pad, "Keeping buffer until %" GST_TIME_FORMAT,
|
GST_DEBUG_OBJECT (pad, "Keeping buffer until %" GST_TIME_FORMAT,
|
||||||
GST_TIME_ARGS (start_time));
|
GST_TIME_ARGS (start_time));
|
||||||
|
gst_buffer_unref (buf);
|
||||||
eos = FALSE;
|
eos = FALSE;
|
||||||
} else {
|
} else {
|
||||||
GST_DEBUG_OBJECT (pad, "Too old buffer -- dropping");
|
GST_DEBUG_OBJECT (pad, "Too old buffer -- dropping");
|
||||||
|
|
Loading…
Reference in a new issue