Message ID | 20200709103542.19909-4-andreas.rheinhardt@gmail.com |
---|---|
State | Accepted |
Commit | ec59dc73f0cc8930bf5dae389cd76d049d537ca7 |
Headers | show |
Series | [FFmpeg-devel,1/7] avformat/avc: Fix undefined shift and assert when reading exp-golomb num | expand |
Context | Check | Description |
---|---|---|
andriy/default | pending | |
andriy/make | success | Make finished |
andriy/make_fate | success | Make fate finished |
On Thu, Jul 09, 2020 at 12:35:39PM +0200, Andreas Rheinhardt wrote: > 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. > > Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com> > --- > libavformat/mm.c | 2 ++ > 1 file changed, 2 insertions(+) LGTM thx [...]
diff --git a/libavformat/mm.c b/libavformat/mm.c index d40fd12acc..02ffbcd824 100644 --- a/libavformat/mm.c +++ b/libavformat/mm.c @@ -175,6 +175,8 @@ static int read_packet(AVFormatContext *s, return 0; case MM_TYPE_AUDIO : + if (s->nb_streams < 2) + return AVERROR_INVALIDDATA; if ((ret = av_get_packet(s->pb, pkt, length)) < 0) return ret; pkt->stream_index = 1;
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. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com> --- libavformat/mm.c | 2 ++ 1 file changed, 2 insertions(+)