Crash when loading jpg file with corrupted embedded profile, no Issue

This commit is contained in:
Ingo
2015-05-25 19:34:01 +02:00
parent 636f3e9b5e
commit d678063484

View File

@@ -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); }
} }
} }