| Index: third_party/lcms2-2.6/src/cmstypes.c
|
| diff --git a/third_party/lcms2-2.6/src/cmstypes.c b/third_party/lcms2-2.6/src/cmstypes.c
|
| index 04dd0c4e001ece93213d99e343ea8b095f12afe1..386439ba2b3bc2ebd344f261d6d65c03eb23c99b 100644
|
| --- a/third_party/lcms2-2.6/src/cmstypes.c
|
| +++ b/third_party/lcms2-2.6/src/cmstypes.c
|
| @@ -4297,8 +4297,12 @@ void *Type_MPEclut_Read(struct _cms_typehandler_struct* self, cmsIOHANDLER* io,
|
|
|
| // Copy MAX_INPUT_DIMENSIONS at most. Expand to cmsUInt32Number
|
| nMaxGrids = InputChans > MAX_INPUT_DIMENSIONS ? MAX_INPUT_DIMENSIONS : InputChans;
|
| - for (i=0; i < nMaxGrids; i++) GridPoints[i] = (cmsUInt32Number) Dimensions8[i];
|
|
|
| + for (i = 0; i < nMaxGrids; i++) {
|
| + if (Dimensions8[i] == 1) goto Error; // Impossible value, 0 for no CLUT and then 2 at least
|
| + GridPoints[i] = (cmsUInt32Number)Dimensions8[i];
|
| + }
|
| +
|
| // Allocate the true CLUT
|
| mpe = cmsStageAllocCLutFloatGranular(self ->ContextID, GridPoints, InputChans, OutputChans, NULL);
|
| if (mpe == NULL) goto Error;
|
|
|