hlsdemux: Do not clear/advance fragment by finished header downloading

Header data must be forwarded to downstream, but if demux does not finish
to finding type (e.g., ts, mp4 and etc), this header data can be cleared
by _stream_clear_pending_data(). Moreover, although demux finish downloading
header data, still it has fragment date to be downloaded, fragment sequence
shouldn't be advanced yet at that moment.

https://bugzilla.gnome.org/show_bug.cgi?id=776928
This commit is contained in:
Seungha Yang 2017-01-30 14:13:06 +09:00 committed by Sebastian Dröge
parent 4e6e6ad0f9
commit b45dd51fb1

View file

@ -947,6 +947,9 @@ gst_hls_demux_finish_fragment (GstAdaptiveDemux * demux,
}
}
if (G_UNLIKELY (stream->downloading_header || stream->downloading_index))
return GST_FLOW_OK;
gst_hls_demux_stream_clear_pending_data (hls_stream);
if (ret == GST_FLOW_OK || ret == GST_FLOW_NOT_LINKED)