diff options
author | Carl Eugen Hoyos <cehoyos@ag.or.at> | 2013-06-29 14:49:47 +0200 |
---|---|---|
committer | Carl Eugen Hoyos <cehoyos@ag.or.at> | 2013-06-29 14:49:47 +0200 |
commit | ac83d621363ca8899b90e65cb574946704bfcdec (patch) | |
tree | ebcf2848bcdfb4036721f233d1fb34e11703acf4 /libavcodec/vc1dec.c | |
parent | d47168e729d698289360a43efc49fde00b54fd46 (diff) | |
download | ffmpeg-ac83d621363ca8899b90e65cb574946704bfcdec.tar.gz |
Avoid a null pointer dereference on oom when decoding vc1.
Fixes ticket #2723.
Diffstat (limited to 'libavcodec/vc1dec.c')
-rw-r--r-- | libavcodec/vc1dec.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/libavcodec/vc1dec.c b/libavcodec/vc1dec.c index b796b3dec1..88f3ca25da 100644 --- a/libavcodec/vc1dec.c +++ b/libavcodec/vc1dec.c @@ -5784,6 +5784,8 @@ static int vc1_decode_frame(AVCodecContext *avctx, void *data, if (avctx->codec_id == AV_CODEC_ID_VC1 || avctx->codec_id == AV_CODEC_ID_VC1IMAGE) { int buf_size2 = 0; buf2 = av_mallocz(buf_size + FF_INPUT_BUFFER_PADDING_SIZE); + if (!buf2) + return AVERROR(ENOMEM); if (IS_MARKER(AV_RB32(buf))) { /* frame starts with marker and needs to be parsed */ const uint8_t *start, *end, *next; |