Avoid a null pointer dereference on oom when decoding vc1.
authorCarl Eugen Hoyos <cehoyos@ag.or.at>
Sat, 29 Jun 2013 12:49:47 +0000 (14:49 +0200)
committerCarl Eugen Hoyos <cehoyos@ag.or.at>
Sat, 29 Jun 2013 12:49:47 +0000 (14:49 +0200)
Fixes ticket #2723.

libavcodec/vc1dec.c

index b796b3d..88f3ca2 100644 (file)
@@ -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;