avformat/avidec: Dont assert the existence of an index for video streams.

Its possible in various rare cases that an index cannot be created or allocated.
Fixes assertion failure
Fixes: signal_sigabrt_7ffff7126425_7712_pokem.avi

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
Michael Niedermayer 2013-11-22 15:08:04 +01:00
parent d20241c9b1
commit 7865759409

View File

@ -1310,10 +1310,9 @@ FF_ENABLE_DEPRECATION_WARNINGS
size);
pkt->stream_index = avi->stream_index;
if (st->codec->codec_type == AVMEDIA_TYPE_VIDEO) {
if (st->codec->codec_type == AVMEDIA_TYPE_VIDEO && st->index_entries) {
AVIndexEntry *e;
int index;
av_assert0(st->index_entries);
index = av_index_search_timestamp(st, ast->frame_offset, 0);
e = &st->index_entries[index];