diff options
author | Michael Niedermayer <michaelni@gmx.at> | 2013-07-01 10:01:11 +0200 |
---|---|---|
committer | Luca Barbato <lu_zero@gentoo.org> | 2013-07-02 20:05:45 +0200 |
commit | 78962d3df49afe5011b572656ecfe940bd5fbf2e (patch) | |
tree | 5b673b62347102dff96554313ce969bd3b78b8ea /libavcodec/jpeg2000.c | |
parent | 86a2602e16171ddc10c3ec655c23b16ffa595059 (diff) | |
download | ffmpeg-78962d3df49afe5011b572656ecfe940bd5fbf2e.tar.gz |
jpeg2000: Check that nreslevels2decode has been initialized before use
Avoid buffer overread.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Diffstat (limited to 'libavcodec/jpeg2000.c')
-rw-r--r-- | libavcodec/jpeg2000.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/libavcodec/jpeg2000.c b/libavcodec/jpeg2000.c index 705399ab0c..5889f80576 100644 --- a/libavcodec/jpeg2000.c +++ b/libavcodec/jpeg2000.c @@ -206,6 +206,11 @@ int ff_jpeg2000_init_component(Jpeg2000Component *comp, int reslevelno, bandno, gbandno = 0, ret, i, j; uint32_t csize = 1; + if (!codsty->nreslevels2decode) { + av_log(avctx, AV_LOG_ERROR, "nreslevels2decode uninitialized\n"); + return AVERROR_INVALIDDATA; + } + if (ret = ff_jpeg2000_dwt_init(&comp->dwt, comp->coord, codsty->nreslevels2decode - 1, codsty->transform)) |