From 93c10d3f0ecd28a7164aea705ae6f623fca5030e Mon Sep 17 00:00:00 2001 From: Florin Apostol Date: Mon, 3 Aug 2015 16:57:31 +0100 Subject: [PATCH] dashdemux: Fix leak in gst_dash_demux_stream_update_fragment_info() The gst_dash_demux_stream_update_fragment_info function could call gst_dash_demux_stream_update_headers_info function twice. The gst_dash_demux_stream_update_headers_info function will set header_uri and index_uri to some newly allocated strings. The values set by the first call of gst_dash_demux_stream_update_headers_info will leak when the function is called for a second time. The solution is to call gst_adaptive_demux_stream_fragment_clear before the second call of gst_dash_demux_stream_update_headers_info https://bugzilla.gnome.org/show_bug.cgi?id=753188 --- ext/dash/gstdashdemux.c | 1 + 1 file changed, 1 insertion(+) diff --git a/ext/dash/gstdashdemux.c b/ext/dash/gstdashdemux.c index 17df50fedb..cfa8ffa807 100644 --- a/ext/dash/gstdashdemux.c +++ b/ext/dash/gstdashdemux.c @@ -912,6 +912,7 @@ gst_dash_demux_stream_update_fragment_info (GstAdaptiveDemuxStream * stream) if (gst_mpd_client_get_next_fragment_timestamp (dashdemux->client, dashstream->index, &ts)) { if (GST_ADAPTIVE_DEMUX_STREAM_NEED_HEADER (stream)) { + gst_adaptive_demux_stream_fragment_clear (&stream->fragment); gst_dash_demux_stream_update_headers_info (stream); }