You've already forked FFmpeg
mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2025-08-10 06:10:52 +02:00
avcodec/jpeg2000dec: Check cdx/y values more carefully
Some invalid values where not handled correctly in the later pixel format matching code. Fixes out of array accesses Fixes Ticket2848 Found-by: Piotr Bandurski <ami_stuff@o2.pl> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
@@ -273,7 +273,8 @@ static int get_siz(Jpeg2000DecoderContext *s)
|
|||||||
s->sgnd[i] = !!(x & 0x80);
|
s->sgnd[i] = !!(x & 0x80);
|
||||||
s->cdx[i] = bytestream2_get_byteu(&s->g);
|
s->cdx[i] = bytestream2_get_byteu(&s->g);
|
||||||
s->cdy[i] = bytestream2_get_byteu(&s->g);
|
s->cdy[i] = bytestream2_get_byteu(&s->g);
|
||||||
if (!s->cdx[i] || !s->cdy[i]) {
|
if ( !s->cdx[i] || s->cdx[i] == 3 || s->cdx[i] > 4
|
||||||
|
|| !s->cdy[i] || s->cdy[i] == 3 || s->cdy[i] > 4) {
|
||||||
av_log(s->avctx, AV_LOG_ERROR, "Invalid sample seperation\n");
|
av_log(s->avctx, AV_LOG_ERROR, "Invalid sample seperation\n");
|
||||||
return AVERROR_INVALIDDATA;
|
return AVERROR_INVALIDDATA;
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user