From 79d798da0d4b5f9f1fc27917102bdd7bcfbe863e Mon Sep 17 00:00:00 2001 From: ochang Date: Fri, 3 Jun 2016 10:27:22 -0700 Subject: LCMS: Update FROM_16_TO_8 macro not to raise UBSan error Cherry-picked from upstream commit 6da55e0b51124b795b707d318c0e03252222ba06 BUG=chromium:616253 Review-Url: https://codereview.chromium.org/2034123003 --- third_party/lcms2-2.6/src/lcms2_internal.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'third_party/lcms2-2.6/src/lcms2_internal.h') diff --git a/third_party/lcms2-2.6/src/lcms2_internal.h b/third_party/lcms2-2.6/src/lcms2_internal.h index 8617e92eb1..cc76d488d0 100644 --- a/third_party/lcms2-2.6/src/lcms2_internal.h +++ b/third_party/lcms2-2.6/src/lcms2_internal.h @@ -94,7 +94,7 @@ // A fast way to convert from/to 16 <-> 8 bits #define FROM_8_TO_16(rgb) (cmsUInt16Number) ((((cmsUInt16Number) (rgb)) << 8)|(rgb)) -#define FROM_16_TO_8(rgb) (cmsUInt8Number) ((((rgb) * 65281 + 8388608) >> 24) & 0xFF) +#define FROM_16_TO_8(rgb) (cmsUInt8Number) ((((cmsUInt32Number)(rgb) * 65281U + 8388608U) >> 24) & 0xFFU) // Code analysis is broken on asserts #ifdef _MSC_VER -- cgit v1.2.3