[argyllcms] Re: BUG: Profile generated by Pantone Huey crashes iccdump & other utils

  • From: Graeme Gill <graeme@xxxxxxxxxxxxx>
  • To: argyllcms@xxxxxxxxxxxxx
  • Date: Thu, 18 Oct 2007 21:28:06 +1000

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.


Other related posts: