From 6d66e1a1136d7a720f370556852c8b5ed0abdfea Mon Sep 17 00:00:00 2001 From: Michael Niedermayer Date: Wed, 25 Feb 2015 20:55:02 +0100 Subject: avutil/common: Fix integer overflow in av_clip_int8/16_c Fixes: signal_sigsegv_30420a5_2388_cov_1489993561_integra_lavf.mp4 Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind Signed-off-by: Michael Niedermayer --- libavutil/common.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'libavutil/common.h') diff --git a/libavutil/common.h b/libavutil/common.h index 3675a6cdf0..2fca6934c7 100644 --- a/libavutil/common.h +++ b/libavutil/common.h @@ -147,7 +147,7 @@ static av_always_inline av_const uint8_t av_clip_uint8_c(int a) */ static av_always_inline av_const int8_t av_clip_int8_c(int a) { - if ((a+0x80) & ~0xFF) return (a>>31) ^ 0x7F; + if ((a+0x80U) & ~0xFF) return (a>>31) ^ 0x7F; else return a; } @@ -169,7 +169,7 @@ static av_always_inline av_const uint16_t av_clip_uint16_c(int a) */ static av_always_inline av_const int16_t av_clip_int16_c(int a) { - if ((a+0x8000) & ~0xFFFF) return (a>>31) ^ 0x7FFF; + if ((a+0x8000U) & ~0xFFFF) return (a>>31) ^ 0x7FFF; else return a; } -- cgit v1.2.3