diff --git a/gst/aacparse/gstbaseparse.c b/gst/aacparse/gstbaseparse.c index 026b13417b..fd2dfe4541 100644 --- a/gst/aacparse/gstbaseparse.c +++ b/gst/aacparse/gstbaseparse.c @@ -1575,12 +1575,13 @@ gst_base_parse_handle_seek (GstBaseParse * parse, GstEvent * event) * it directly or fail. For TIME, try upstream, but do it ourselves if * it fails upstream */ if (format != GST_FORMAT_TIME) { - gst_event_ref (event); return gst_pad_push_event (parse->sinkpad, event); } else { gst_event_ref (event); - if (gst_pad_push_event (parse->sinkpad, event)) + if (gst_pad_push_event (parse->sinkpad, event)) { + gst_event_unref (event); return TRUE; + } } /* get flush flag */