diff --git a/libavformat/asfdec_o.c b/libavformat/asfdec_o.c index 71e65f4763..3bc53670e3 100644 --- a/libavformat/asfdec_o.c +++ b/libavformat/asfdec_o.c @@ -981,6 +981,9 @@ static int asf_read_simple_index(AVFormatContext *s, const GUIDParseTable *g) int64_t offset; uint64_t size = avio_rl64(pb); + if (size < 24) + return AVERROR_INVALIDDATA; + // simple index objects should be ordered by stream number, this loop tries to find // the first not indexed video stream for (i = 0; i < asf->nb_streams; i++) {