Commit 34568912 authored by Paul B Mahol's avatar Paul B Mahol

exr: check version too

Separate version from flags.
Signed-off-by: 's avatarPaul B Mahol <onemda@gmail.com>
parent 8902f5b8
...@@ -236,7 +236,7 @@ static int decode_frame(AVCodecContext *avctx, ...@@ -236,7 +236,7 @@ static int decode_frame(AVCodecContext *avctx,
AVFrame *const p = &s->picture; AVFrame *const p = &s->picture;
uint8_t *ptr; uint8_t *ptr;
int i, x, y, stride, magic_number, version_flag, ret; int i, x, y, stride, magic_number, version, flags, ret;
int w = 0; int w = 0;
int h = 0; int h = 0;
unsigned int xmin = ~0; unsigned int xmin = ~0;
...@@ -271,8 +271,14 @@ static int decode_frame(AVCodecContext *avctx, ...@@ -271,8 +271,14 @@ static int decode_frame(AVCodecContext *avctx,
return AVERROR_INVALIDDATA; return AVERROR_INVALIDDATA;
} }
version_flag = bytestream_get_le32(&buf); version = bytestream_get_byte(&buf);
if ((version_flag & 0x200) == 0x200) { if (version != 2) {
av_log(avctx, AV_LOG_ERROR, "Unsupported version %d\n", version);
return AVERROR_PATCHWELCOME;
}
flags = bytestream_get_le24(&buf);
if (flags & 0x2) {
av_log(avctx, AV_LOG_ERROR, "Tile based images are not supported\n"); av_log(avctx, AV_LOG_ERROR, "Tile based images are not supported\n");
return AVERROR_PATCHWELCOME; return AVERROR_PATCHWELCOME;
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment