aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Niedermayer <michael@niedermayer.cc>2018-05-15 17:07:00 +0200
committerMichael Niedermayer <michael@niedermayer.cc>2018-10-23 01:44:40 +0200
commitffe4ffa4ef7afbb2f5e576344c7dd7b2ba4201b1 (patch)
tree761529e69a85a5a9fdb8d863cf8e30e87711f9f8
parenta8fcb810c964380c1389d8256cac96861df496aa (diff)
downloadffmpeg-ffe4ffa4ef7afbb2f5e576344c7dd7b2ba4201b1.tar.gz
avformat/mov: Only fail for STCO/STSC contradictions if both exist
Fixes regression with playback of GF9720Repeal20the20Eighth20with20Helen20Linehan.m4a See: crbug 822666 Found-by: "Mattias Wadman <mattias.wadman@gmail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc> (cherry picked from commit 2c2d689c56646cce64d02a3b75f61c12c5589260) Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
-rw-r--r--libavformat/mov.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/libavformat/mov.c b/libavformat/mov.c
index d7aefee482..4faa90fd99 100644
--- a/libavformat/mov.c
+++ b/libavformat/mov.c
@@ -3066,7 +3066,7 @@ static int mov_read_trak(MOVContext *c, AVIOContext *pb, MOVAtom atom)
st->index);
return 0;
}
- if (sc->stsc_count && sc->stsc_data[ sc->stsc_count - 1 ].first > sc->chunk_count) {
+ if (sc->chunk_count && sc->stsc_count && sc->stsc_data[ sc->stsc_count - 1 ].first > sc->chunk_count) {
av_log(c->fc, AV_LOG_ERROR, "stream %d, contradictionary STSC and STCO\n",
st->index);
return AVERROR_INVALIDDATA;