diff options
author | Michael Niedermayer <michaelni@gmx.at> | 2015-02-04 20:13:18 +0100 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2015-02-04 20:14:18 +0100 |
commit | afa92907f3c6a0c3bdad766ec8d938ee17ee1c9e (patch) | |
tree | 16128a5a9757a4ff6e960632dc16e6b7e19d9789 | |
parent | 7f02fcd91774818ad36cafde44aefe8924aa15b7 (diff) | |
download | ffmpeg-afa92907f3c6a0c3bdad766ec8d938ee17ee1c9e.tar.gz |
avcodec/mjpegdec: Check escape sequence validity
Fixes assertion failure
Fixes: asan_heap-oob_1c1a4ea_1242_cov_2274415971_TESTcmyk.jpg
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
-rw-r--r-- | libavcodec/mjpegdec.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/libavcodec/mjpegdec.c b/libavcodec/mjpegdec.c index 054d936aac..c5769be9a8 100644 --- a/libavcodec/mjpegdec.c +++ b/libavcodec/mjpegdec.c @@ -1901,6 +1901,10 @@ int ff_mjpeg_find_marker(MJpegDecodeContext *s, put_bits(&pb, 8, x); if (x == 0xFF) { x = src[b++]; + if (x & 0x80) { + av_log(s->avctx, AV_LOG_WARNING, "Invalid escape sequence\n"); + x &= 0x7f; + } put_bits(&pb, 7, x); bit_count--; } |