diff --git a/libavformat/avidec.c b/libavformat/avidec.c index 1d5e3bafb3..9a4f881df7 100644 --- a/libavformat/avidec.c +++ b/libavformat/avidec.c @@ -1330,7 +1330,8 @@ static int avi_read_idx1(AVFormatContext *s, int size) ast = st->priv_data; if (first_packet && first_packet_pos) { - data_offset = first_packet_pos - pos; + if (avi->movi_list + 4 != pos || pos + 500 > first_packet_pos) + data_offset = first_packet_pos - pos; first_packet = 0; } pos += data_offset;