mirror of https://git.ffmpeg.org/ffmpeg.git
jpeg2000: Check code-block size
Signed-off-by: Luca Barbato <lu_zero@gentoo.org> Signed-off-by: Nicolas Bertrand <nicoinattendu@gmail.com> Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
This commit is contained in:
parent
5650e331a7
commit
fbcc03db8f
|
@ -267,6 +267,12 @@ static int get_cox(Jpeg2000DecoderContext *s, Jpeg2000CodingStyle *c)
|
||||||
c->log2_cblk_width = bytestream_get_byte(&s->buf) + 2; // cblk width
|
c->log2_cblk_width = bytestream_get_byte(&s->buf) + 2; // cblk width
|
||||||
c->log2_cblk_height = bytestream_get_byte(&s->buf) + 2; // cblk height
|
c->log2_cblk_height = bytestream_get_byte(&s->buf) + 2; // cblk height
|
||||||
|
|
||||||
|
if (c->log2_cblk_width > 10 || c->log2_cblk_height > 10 ||
|
||||||
|
c->log2_cblk_width + c->log2_cblk_height > 12) {
|
||||||
|
av_log(s->avctx, AV_LOG_ERROR, "cblk size invalid\n");
|
||||||
|
return AVERROR_INVALIDDATA;
|
||||||
|
}
|
||||||
|
|
||||||
c->cblk_style = bytestream_get_byte(&s->buf);
|
c->cblk_style = bytestream_get_byte(&s->buf);
|
||||||
if (c->cblk_style != 0) { // cblk style
|
if (c->cblk_style != 0) { // cblk style
|
||||||
av_log(s->avctx, AV_LOG_ERROR, "no extra cblk styles supported\n");
|
av_log(s->avctx, AV_LOG_ERROR, "no extra cblk styles supported\n");
|
||||||
|
|
Loading…
Reference in New Issue