From aa0d027220e2f0deac84a12506c1404e1ddde4bf Mon Sep 17 00:00:00 2001 From: Edward Hervey Date: Tue, 7 Feb 2023 08:49:24 +0100 Subject: [PATCH] closedcaption: Don't leak caps event All events that we handle should be unreffed Part-of: --- .../gst-plugins-bad/ext/closedcaption/gstceaccoverlay.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/subprojects/gst-plugins-bad/ext/closedcaption/gstceaccoverlay.c b/subprojects/gst-plugins-bad/ext/closedcaption/gstceaccoverlay.c index 4327648..dbcecfe 100644 --- a/subprojects/gst-plugins-bad/ext/closedcaption/gstceaccoverlay.c +++ b/subprojects/gst-plugins-bad/ext/closedcaption/gstceaccoverlay.c @@ -1000,7 +1000,6 @@ gst_cea_cc_overlay_cc_event (GstPad * pad, GstObject * parent, GstEvent * event) ("received non-TIME newsegment event on text input")); } - gst_event_unref (event); ret = TRUE; /* wake up the video chain, it might be waiting for a text buffer or @@ -1027,7 +1026,6 @@ gst_cea_cc_overlay_cc_event (GstPad * pad, GstObject * parent, GstEvent * event) GST_CEA_CC_OVERLAY_BROADCAST (overlay); GST_CEA_CC_OVERLAY_UNLOCK (overlay); - gst_event_unref (event); ret = TRUE; break; } @@ -1039,7 +1037,6 @@ gst_cea_cc_overlay_cc_event (GstPad * pad, GstObject * parent, GstEvent * event) gst_cea_cc_overlay_pop_text (overlay); gst_segment_init (&overlay->cc_segment, GST_FORMAT_TIME); GST_CEA_CC_OVERLAY_UNLOCK (overlay); - gst_event_unref (event); ret = TRUE; break; case GST_EVENT_FLUSH_START: @@ -1048,7 +1045,6 @@ gst_cea_cc_overlay_cc_event (GstPad * pad, GstObject * parent, GstEvent * event) overlay->cc_flushing = TRUE; GST_CEA_CC_OVERLAY_BROADCAST (overlay); GST_CEA_CC_OVERLAY_UNLOCK (overlay); - gst_event_unref (event); ret = TRUE; break; case GST_EVENT_EOS: @@ -1059,14 +1055,18 @@ gst_cea_cc_overlay_cc_event (GstPad * pad, GstObject * parent, GstEvent * event) * a text segment update */ GST_CEA_CC_OVERLAY_BROADCAST (overlay); GST_CEA_CC_OVERLAY_UNLOCK (overlay); - gst_event_unref (event); ret = TRUE; break; default: - ret = gst_pad_event_default (pad, parent, event); break; } + if (ret) { + gst_event_unref (event); + } else { + ret = gst_pad_event_default (pad, parent, event); + } + return ret; } -- 2.7.4