From a569347789a64adc2ccf20c2fbaf94f89ee7a399 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Sebastian=20Dr=C3=B6ge?= Date: Thu, 26 Jul 2018 02:31:05 +0300 Subject: [PATCH] aggregator: Don't leak peer pad of inactive pads when (not) forwarding QoS events to them --- libs/gst/base/gstaggregator.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/libs/gst/base/gstaggregator.c b/libs/gst/base/gstaggregator.c index f3c6918..50409a8 100644 --- a/libs/gst/base/gstaggregator.c +++ b/libs/gst/base/gstaggregator.c @@ -1896,7 +1896,6 @@ gst_aggregator_event_forward_func (GstPad * pad, gpointer user_data) } else { ret = gst_pad_send_event (peer, gst_event_ref (evdata->event)); GST_DEBUG_OBJECT (pad, "return of event push is %d", ret); - gst_object_unref (peer); } } @@ -1936,6 +1935,9 @@ gst_aggregator_event_forward_func (GstPad * pad, gpointer user_data) evdata->result &= ret; + if (peer) + gst_object_unref (peer); + /* Always send to all pads */ return FALSE; } -- 2.7.4