diff options
author | Michael Niedermayer <michaelni@gmx.at> | 2014-03-24 05:01:32 +0100 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2014-06-25 16:18:39 +0200 |
commit | 36fc9bff08f989d28c19fd6624f5239098407120 (patch) | |
tree | 6debc2043a8bb4d30a8a96babf2b729694bf0a4e | |
parent | 3ae71dd33ed3a4fb36994622bf4ed0418027150e (diff) | |
download | ffmpeg-36fc9bff08f989d28c19fd6624f5239098407120.tar.gz |
swscale/swscale: fix integer overflow
Should fix fate failure with clang ftrapv
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit c9c0451224fd7bc38b4e135e99f114f80c1ae67f)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
-rw-r--r-- | libswscale/swscale.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/libswscale/swscale.c b/libswscale/swscale.c index c5bba82e88..c336548bac 100644 --- a/libswscale/swscale.c +++ b/libswscale/swscale.c @@ -208,8 +208,9 @@ static void lumRangeToJpeg16_c(int16_t *_dst, int width) { int i; int32_t *dst = (int32_t *) _dst; - for (i = 0; i < width; i++) - dst[i] = (FFMIN(dst[i], 30189 << 4) * 4769 - (39057361 << 2)) >> 12; + for (i = 0; i < width; i++) { + dst[i] = ((int)(FFMIN(dst[i], 30189 << 4) * 4769U - (39057361 << 2))) >> 12; + } } static void lumRangeFromJpeg16_c(int16_t *_dst, int width) |