From: Guillaume Desmottes Date: Mon, 13 Apr 2015 12:40:22 +0000 (+0200) Subject: typefind: fix leak in gst_type_find_element_src_event() X-Git-Tag: 1.6.1~391 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=15fd78f0b6b0008c8723cd44e454ad945c004b25;p=platform%2Fupstream%2Fgstreamer.git typefind: fix leak in gst_type_find_element_src_event() gst_type_find_element_src_event() is supposed to consume @event but wasn't doing so when it was handling the event itself. https://bugzilla.gnome.org/show_bug.cgi?id=747775 Signed-off-by: Guillaume Desmottes --- diff --git a/plugins/elements/gsttypefindelement.c b/plugins/elements/gsttypefindelement.c index afcfb8e..9475a65 100644 --- a/plugins/elements/gsttypefindelement.c +++ b/plugins/elements/gsttypefindelement.c @@ -500,6 +500,7 @@ gst_type_find_element_src_event (GstPad * pad, GstObject * parent, GstEvent * event) { GstTypeFindElement *typefind = GST_TYPE_FIND_ELEMENT (parent); + gboolean result; if (typefind->mode != MODE_NORMAL) { /* need to do more? */ @@ -510,7 +511,9 @@ gst_type_find_element_src_event (GstPad * pad, GstObject * parent, /* Only handle seeks here if driving the pipeline */ if (typefind->segment.format != GST_FORMAT_UNDEFINED && GST_EVENT_TYPE (event) == GST_EVENT_SEEK) { - return gst_type_find_element_seek (typefind, event); + result = gst_type_find_element_seek (typefind, event); + gst_mini_object_unref (GST_MINI_OBJECT_CAST (event)); + return result; } else { return gst_pad_push_event (typefind->sink, event); }