Crash when loading jpg file with corrupted embedded profile, no Issue
This commit is contained in:
@@ -247,16 +247,19 @@ void StdImageSource::colorSpaceConversion (Imagefloat* im, ColorManagementParams
|
|||||||
cmsHTRANSFORM hTransform = cmsCreateTransform (in, TYPE_RGB_FLT, out, TYPE_RGB_FLT, settings->colorimetricIntent,
|
cmsHTRANSFORM hTransform = cmsCreateTransform (in, TYPE_RGB_FLT, out, TYPE_RGB_FLT, settings->colorimetricIntent,
|
||||||
cmsFLAGS_NOOPTIMIZE | cmsFLAGS_NOCACHE);
|
cmsFLAGS_NOOPTIMIZE | cmsFLAGS_NOCACHE);
|
||||||
lcmsMutex->unlock ();
|
lcmsMutex->unlock ();
|
||||||
|
if(hTransform) {
|
||||||
|
// Convert to the [0.0 ; 1.0] range
|
||||||
|
im->normalizeFloatTo1();
|
||||||
|
|
||||||
// Convert to the [0.0 ; 1.0] range
|
im->ExecCMSTransform(hTransform);
|
||||||
im->normalizeFloatTo1();
|
|
||||||
|
|
||||||
im->ExecCMSTransform(hTransform);
|
// Converting back to the [0.0 ; 65535.0] range
|
||||||
|
im->normalizeFloatTo65535();
|
||||||
|
|
||||||
// Converting back to the [0.0 ; 65535.0] range
|
cmsDeleteTransform(hTransform);
|
||||||
im->normalizeFloatTo65535();
|
} else {
|
||||||
|
printf("Could not convert from %s to %s\n",in == embedded ? "embedded profile" : cmp.input.data(),cmp.working.data());
|
||||||
cmsDeleteTransform(hTransform);
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user