]> git.sesse.net Git - ffmpeg/blobdiff - libavcodec/dpx.c
avcodec: Constify AVCodecs
[ffmpeg] / libavcodec / dpx.c
index 702caa385e8409f8edf9c68acdb2dcd43b57007e..8e77c09bb17aec20b54cccee501a08e52984fc86 100644 (file)
@@ -242,6 +242,9 @@ static int decode_frame(AVCodecContext *avctx,
         return AVERROR_PATCHWELCOME;
     }
 
+    if (bits_per_color > 32)
+        return AVERROR_INVALIDDATA;
+
     buf += 820;
     avctx->sample_aspect_ratio.num = read32(&buf, endian);
     avctx->sample_aspect_ratio.den = read32(&buf, endian);
@@ -497,6 +500,14 @@ static int decode_frame(AVCodecContext *avctx,
     }
 
     switch (1000 * descriptor + 10 * bits_per_color + endian) {
+    case 1081:
+    case 1080:
+    case 2081:
+    case 2080:
+    case 3081:
+    case 3080:
+    case 4081:
+    case 4080:
     case 6081:
     case 6080:
         avctx->pix_fmt = AV_PIX_FMT_GRAY8;
@@ -751,7 +762,7 @@ static int decode_frame(AVCodecContext *avctx,
     return buf_size;
 }
 
-AVCodec ff_dpx_decoder = {
+const AVCodec ff_dpx_decoder = {
     .name           = "dpx",
     .long_name      = NULL_IF_CONFIG_SMALL("DPX (Digital Picture Exchange) image"),
     .type           = AVMEDIA_TYPE_VIDEO,