Martin Ling wrote:
The attached ICC profile was generated by the Pantone Huey software for my laptop LCD. It crashes iccdump (from the Debian argyll-bin package, version 0.60-0.1) with the attached trace. It seems to do the same thing to many other Argyll utilities.
You are right that there is a bug that is triggered by the Huey (V4) profile - there is a double free. To fix this, simply delete the line around 9920 in icc.c in the current snapshot (V0.7Beta6): #ifndef ENABLE_V4 if (icp->ver) { sprintf(icp->err,"icmHeader_read: ICC V4 not supported!"); - icp->al->free(icp->al, buf); return icp->errc = 1; } #endif I will (of course) fix this in the next release of Argyll. With this fixed (or on MSWindows, which isn't as fussy about such things), iccdump then returns: iccdump "Dell Precision M20.icm" iccdump: Error - 1, icmHeader_read: ICC V4 not supported! as one would expect, since the current version of icclib doesn't support V4.
Some background that may help: the profile is successfully usable in Photoshop, and by the command-line lcms utilities. I got crashes using it with ufraw, which were traced to the lcms cmsTakeProductName call - the profile does not apparently contain a product name, and removing the call from ufraw fixed the problem for me.
It's unlikely to be related, since V4 tags aren't supported. [It's kind of dumb that the Huey profile is labelled V4, since it's actually a matrix/shaper profile that could have just as easily been created as a V2 profile. These profiles happily crash Photoshop V5.5 on startup, as the Huey S/W always puts such a profile in the MSWindows profile directory, even if you don't actually create a display profile.]
There may be quirks to this profile but it does work, and I've yet to see anything that confirms for sure it is not compliant with the ICC standard. In any case there are probably going to be more Huey-generated profiles in circulation before too long, so it would be good to fix this.
I'd love to get ICCV4 icclib finished, but without funding for the project, I'm afraid it is low on my priority list at the moment. Hopefully there won't be many such profiles around, since it will be better to create more compatible ICCV2 profiles using Argyll + Huey :-) Graeme Gill.