icydemux: Fix segfault if metadata-interval is 0
authorAlex O'Konski <alexanderokonski@gmail.com>
Fri, 17 Apr 2015 06:51:46 +0000 (06:51 +0000)
committerTim-Philipp Müller <tim@centricular.com>
Fri, 17 Apr 2015 09:01:02 +0000 (10:01 +0100)
Prevents an extra unref of GstBuffer when passing a non-icy stream through
icydemux with metadata-interval set to 0.

Reproducible with:
gst-launch-1.0 filesrc location=~/testsong.mp3 ! \
'application/x-icy,metadata-interval=(int)0' ! icydemux ! decodebin ! wavenc ! \
filesink location=~/testsong.wav

https://bugzilla.gnome.org/show_bug.cgi?id=748024

gst/icydemux/gsticydemux.c

index cdcb5ed..dade21b 100644 (file)
@@ -551,6 +551,7 @@ gst_icydemux_chain (GstPad * pad, GstObject * parent, GstBuffer * buf)
 
   if (icydemux->meta_interval == 0) {
     ret = gst_icydemux_typefind_or_forward (icydemux, buf);
+    buf = NULL;
     goto done;
   }