avformat/matroskadec: fix off by 1 error in matroska_read_seek()

Fixes out of array read

Fixes: vp9-opus-crash.webm

Found-by: Dale Curtis <dalecurtis@google.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
pull/74/head
Michael Niedermayer 11 years ago
parent 8bfb4d72dd
commit b3dfebd641
  1. 2
      libavformat/matroskadec.c

@ -3018,7 +3018,7 @@ static int matroska_read_seek(AVFormatContext *s, int stream_index,
tracks[i].stream, st->index_entries[index].timestamp, tracks[i].stream, st->index_entries[index].timestamp,
AVSEEK_FLAG_BACKWARD); AVSEEK_FLAG_BACKWARD);
while (index_sub >= 0 && while (index_sub >= 0 &&
index_min >= 0 && index_min > 0 &&
tracks[i].stream->index_entries[index_sub].pos < st->index_entries[index_min].pos && tracks[i].stream->index_entries[index_sub].pos < st->index_entries[index_min].pos &&
st->index_entries[index].timestamp - tracks[i].stream->index_entries[index_sub].timestamp < 30000000000 / matroska->time_scale) st->index_entries[index].timestamp - tracks[i].stream->index_entries[index_sub].timestamp < 30000000000 / matroska->time_scale)
index_min--; index_min--;

Loading…
Cancel
Save