From 23f105a83086efd58f62217bed72370e4835132a Mon Sep 17 00:00:00 2001 From: Michael Niedermayer Date: Sat, 5 Oct 2013 01:38:08 +0200 Subject: [PATCH] avcodec/dpx: check encoding Signed-off-by: Michael Niedermayer --- libavcodec/dpx.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/libavcodec/dpx.c b/libavcodec/dpx.c index 59845c700d..9609a5265b 100644 --- a/libavcodec/dpx.c +++ b/libavcodec/dpx.c @@ -78,6 +78,7 @@ static int decode_frame(AVCodecContext *avctx, int magic_num, endian; int x, y, i, ret; int w, h, bits_per_color, descriptor, elements, packing, total_size; + int encoding; unsigned int rgbBuffer = 0; int n_datum = 0; @@ -126,8 +127,15 @@ static int decode_frame(AVCodecContext *avctx, bits_per_color = buf[0]; buf++; packing = read16(&buf, endian); + encoding = read16(&buf, endian); - buf += 822; + if (encoding) { + avpriv_report_missing_feature(avctx, + "Unsupported encoding %d\n", encoding); + return AVERROR_PATCHWELCOME; + } + + buf += 820; avctx->sample_aspect_ratio.num = read32(&buf, endian); avctx->sample_aspect_ratio.den = read32(&buf, endian); if (avctx->sample_aspect_ratio.num > 0 && avctx->sample_aspect_ratio.den > 0)