tsdemux: fix taglist leak
authorGuillaume Desmottes <guillaume.desmottes@collabora.co.uk>
Tue, 28 Apr 2015 08:13:35 +0000 (10:13 +0200)
committerTim-Philipp Müller <tim@centricular.com>
Tue, 28 Apr 2015 13:58:03 +0000 (14:58 +0100)
If the stream which is about to be removed still has a ref on a tag list we
should drop it.

Fix a leak which was occasionally happening with the
validate.file.playback.change_state_intensive.tron_en_ge_aac_h264_ts scenario.

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

gst/mpegtsdemux/tsdemux.c

index bf8c88a..e8c13f6 100644 (file)
@@ -1492,6 +1492,11 @@ gst_ts_demux_stream_removed (MpegTSBase * base, MpegTSBaseStream * bstream)
 
   gst_ts_demux_stream_flush (stream, GST_TS_DEMUX_CAST (base), TRUE);
 
+  if (stream->taglist != NULL) {
+    gst_tag_list_unref (stream->taglist);
+    stream->taglist = NULL;
+  }
+
   tsdemux_h264_parsing_info_clear (&stream->h264infos);
 }