aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2015-02-04 20:13:18 +0100
committerMichael Niedermayer <michaelni@gmx.at>2015-02-04 21:27:44 +0100
commit20be3ea442abafbdc4d8288a549c302a306bc63c (patch)
tree8f9c2b9dfa0ee32d5e75e1437a0063564d82ff64
parent70ff376e8357cd7af909e970d35b04e6ce6833cd (diff)
downloadffmpeg-20be3ea442abafbdc4d8288a549c302a306bc63c.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.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/libavcodec/mjpegdec.c b/libavcodec/mjpegdec.c
index a2a93c1266..f04b603437 100644
--- a/libavcodec/mjpegdec.c
+++ b/libavcodec/mjpegdec.c
@@ -1631,6 +1631,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--;
}