audiodecoder: fix buffer leak in error code path
authorHavard Graff <havard.graff@gmail.com>
Tue, 6 Jun 2017 08:39:15 +0000 (10:39 +0200)
committerTim-Philipp Müller <tim@centricular.com>
Tue, 5 Dec 2017 20:10:58 +0000 (20:10 +0000)
gst-libs/gst/audio/gstaudiodecoder.c

index 5dc6d49..435248a 100644 (file)
@@ -1231,8 +1231,10 @@ gst_audio_decoder_finish_frame (GstAudioDecoder * dec, GstBuffer * buf,
 
   if (buf) {
     ret = check_pending_reconfigure (dec);
-    if (ret == GST_FLOW_FLUSHING || ret == GST_FLOW_NOT_NEGOTIATED)
+    if (ret == GST_FLOW_FLUSHING || ret == GST_FLOW_NOT_NEGOTIATED) {
+      gst_buffer_unref (buf);
       goto exit;
+    }
 
     if (priv->pending_events)
       send_pending_events (dec);