libavformat/avidec: check memory allocation

Memory allocation for AVIOContext should be checked. In this code,
all error conditions are sent to the "goto error".

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
This commit is contained in:
Chris Miceli 2020-10-13 14:22:25 +11:00 committed by Michael Niedermayer
parent 6bdfea8d4b
commit 0c90377a40
1 changed files with 6 additions and 2 deletions

View File

@ -1072,11 +1072,15 @@ static int read_gab2_sub(AVFormatContext *s, AVStream *st, AVPacket *pkt)
ff_const59 AVInputFormat *sub_demuxer;
AVRational time_base;
int size;
AVProbeData pd;
unsigned int desc_len;
AVIOContext *pb = avio_alloc_context(pkt->data + 7,
pkt->size - 7,
0, NULL, NULL, NULL, NULL);
AVProbeData pd;
unsigned int desc_len = avio_rl32(pb);
if (!pb)
goto error;
desc_len = avio_rl32(pb);
if (desc_len > pb->buf_end - pb->buf_ptr)
goto error;