avformat/mm: Check for existence of audio stream

No audio stream is created unconditionally and if none has been created,
no packet with stream_index 1 may be returned. This fixes an assert in
ff_read_packet() in libavformat/utils reported in ticket #8782.

Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
(cherry picked from commit ec59dc73f0)
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
This commit is contained in:
Andreas Rheinhardt 2020-07-09 12:07:28 +02:00 committed by Michael Niedermayer
parent 177fb05660
commit eeb4dd7866

View File

@ -174,6 +174,8 @@ static int read_packet(AVFormatContext *s,
return 0;
case MM_TYPE_AUDIO :
if (s->nb_streams < 2)
return AVERROR_INVALIDDATA;
if (av_get_packet(s->pb, pkt, length)<0)
return AVERROR(ENOMEM);
pkt->stream_index = 1;