dxa: Make sure the reference frame exists
authorLuca Barbato <lu_zero@gentoo.org>
Wed, 14 Aug 2013 14:51:53 +0000 (16:51 +0200)
committerLuca Barbato <lu_zero@gentoo.org>
Fri, 16 Aug 2013 12:56:56 +0000 (14:56 +0200)
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
libavcodec/dxa.c

index 9e7f453..ddc31f3 100644 (file)
@@ -255,6 +255,10 @@ static int decode_frame(AVCodecContext *avctx, void *data, int *got_frame, AVPac
     case 3:
     case 4:
     case 5:
+        if (!tmpptr) {
+            av_log(avctx, AV_LOG_ERROR, "Missing reference frame.\n");
+            return AVERROR_INVALIDDATA;
+        }
         frame->key_frame = !(compr & 1);
         frame->pict_type = (compr & 1) ? AV_PICTURE_TYPE_P : AV_PICTURE_TYPE_I;
         for(j = 0; j < avctx->height; j++){