Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(444)

Side by Side Diff: third_party/lcms2-2.6/src/lcms2_internal.h

Issue 2034123003: LCMS: Update FROM_16_TO_8 macro not to raise UBSan error (Closed) Base URL: https://pdfium.googlesource.com/pdfium.git@master
Patch Set: Created 4 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « third_party/lcms2-2.6/README.pdfium ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 //<<<+++OPENSOURCE 1 //<<<+++OPENSOURCE
2 //<<<+++OPENSOURCE_MUST_BEGIN COMMENT==TRUE 2 //<<<+++OPENSOURCE_MUST_BEGIN COMMENT==TRUE
3 // 3 //
4 // Little Color Management System 4 // Little Color Management System
5 // Copyright (c) 1998-2014 Marti Maria Saguer 5 // Copyright (c) 1998-2014 Marti Maria Saguer
6 // 6 //
7 // Permission is hereby granted, free of charge, to any person obtaining 7 // Permission is hereby granted, free of charge, to any person obtaining
8 // a copy of this software and associated documentation files (the "Software"), 8 // a copy of this software and associated documentation files (the "Software"),
9 // to deal in the Software without restriction, including without limitation 9 // to deal in the Software without restriction, including without limitation
10 // the rights to use, copy, modify, merge, publish, distribute, sublicense, 10 // the rights to use, copy, modify, merge, publish, distribute, sublicense,
(...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after
87 # define snprintf _snprintf 87 # define snprintf _snprintf
88 # endif 88 # endif
89 # ifndef vsnprintf 89 # ifndef vsnprintf
90 # define vsnprintf _vsnprintf 90 # define vsnprintf _vsnprintf
91 # endif 91 # endif
92 #endif 92 #endif
93 93
94 94
95 // A fast way to convert from/to 16 <-> 8 bits 95 // A fast way to convert from/to 16 <-> 8 bits
96 #define FROM_8_TO_16(rgb) (cmsUInt16Number) ((((cmsUInt16Number) (rgb)) << 8)|(r gb)) 96 #define FROM_8_TO_16(rgb) (cmsUInt16Number) ((((cmsUInt16Number) (rgb)) << 8)|(r gb))
97 #define FROM_16_TO_8(rgb) (cmsUInt8Number) ((((rgb) * 65281 + 8388608) >> 24) & 0xFF) 97 #define FROM_16_TO_8(rgb) (cmsUInt8Number) ((((cmsUInt32Number)(rgb) * 65281U + 8388608U) >> 24) & 0xFFU)
98 98
99 // Code analysis is broken on asserts 99 // Code analysis is broken on asserts
100 #ifdef _MSC_VER 100 #ifdef _MSC_VER
101 # if (_MSC_VER >= 1500) 101 # if (_MSC_VER >= 1500)
102 # define _cmsAssert(a) { assert((a)); __analysis_assume((a)); } 102 # define _cmsAssert(a) { assert((a)); __analysis_assume((a)); }
103 # else 103 # else
104 # define _cmsAssert(a) assert((a)) 104 # define _cmsAssert(a) assert((a))
105 # endif 105 # endif
106 #else 106 #else
107 # define _cmsAssert(a) assert((a)) 107 # define _cmsAssert(a) assert((a))
(...skipping 915 matching lines...) Expand 10 before | Expand all | Expand 10 after
1023 cmsUInt32Number dwFlags); 1023 cmsUInt32Number dwFlags);
1024 1024
1025 cmsBool _cmsAdaptationMatrix(cmsMAT3* r, const cmsMAT3* ConeMatrix, const cmsC IEXYZ* FromIll, const cmsCIEXYZ* ToIll); 1025 cmsBool _cmsAdaptationMatrix(cmsMAT3* r, const cmsMAT3* ConeMatrix, const cmsC IEXYZ* FromIll, const cmsCIEXYZ* ToIll);
1026 1026
1027 cmsBool _cmsBuildRGB2XYZtransferMatrix(cmsMAT3* r, const cmsCIExyY* WhitePoint , const cmsCIExyYTRIPLE* Primaries); 1027 cmsBool _cmsBuildRGB2XYZtransferMatrix(cmsMAT3* r, const cmsCIExyY* WhitePoint , const cmsCIExyYTRIPLE* Primaries);
1028 1028
1029 1029
1030 #define _lcms_internal_H 1030 #define _lcms_internal_H
1031 #endif 1031 #endif
1032 //<<<+++OPENSOURCE_MUST_END 1032 //<<<+++OPENSOURCE_MUST_END
OLDNEW
« no previous file with comments | « third_party/lcms2-2.6/README.pdfium ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698