diff --git a/libavcodec/jpeg2000dec.c b/libavcodec/jpeg2000dec.c index fb4e52b238..1eb20ac2ef 100644 --- a/libavcodec/jpeg2000dec.c +++ b/libavcodec/jpeg2000dec.c @@ -273,6 +273,10 @@ static int get_siz(Jpeg2000DecoderContext *s) s->sgnd[i] = !!(x & 0x80); s->cdx[i] = bytestream2_get_byteu(&s->g); s->cdy[i] = bytestream2_get_byteu(&s->g); + if (!s->cdx[i] || !s->cdy[i]) { + av_log(s->avctx, AV_LOG_ERROR, "Invalid sample seperation\n"); + return AVERROR_INVALIDDATA; + } log2_chroma_wh |= s->cdy[i] >> 1 << i * 4 | s->cdx[i] >> 1 << i * 4 + 2; }