asfdemux; Don't assume index is present at end of file

Some files have garbage at the end of the file, don't error out if we don't
find the index there.

Reverts back to previous behaviour (where corrupted/missing indexex were
not a fatal error).

Regression introduced in 97294eb8bb
This commit is contained in:
Edward Hervey 2017-06-27 10:25:42 +02:00 committed by Edward Hervey
parent 8012cfae27
commit 0bbdfa8ee9

View file

@ -1090,9 +1090,12 @@ gst_asf_demux_pull_indices (GstASFDemux * demux)
gst_buffer_map (buf, &map, GST_MAP_READ);
g_assert (map.size >= 16 + 8);
if (!asf_demux_peek_object (demux, map.data, 16 + 8, &obj, TRUE)) {
GST_DEBUG_OBJECT (demux, "No valid object, corrupted index, ignoring");
GST_MEMDUMP_OBJECT (demux, "Corrupted index ?", map.data, MIN (map.size,
64));
gst_buffer_unmap (buf, &map);
gst_buffer_replace (&buf, NULL);
ret = GST_FLOW_ERROR;
/* Non-fatal, return */
break;
}
gst_buffer_unmap (buf, &map);