Hi,

>> The usual way to check if all is ok is just to cmsSaveProfileToMem, and use
>> NULL as memory pointer. Then check the return code.
>
> I tried that, but the profile always "successfully" loads and saves,
> just throwing errors the first time you access the corrupted dict
> table.

Well, that was the issue. cmsSaveProfileToMem corrupted the
profile and of course it was not aware of that.
Then, despite the profile has at least one corrupted tag,
you still can open this profile by using any
cmsOpenProfileXXX because the structure of the directory
of tags is correct.

Only when you read the corrupted tag, the error logger is
called and a NULL pointer is returned. I believe this is the
good way to operate, since lcms does *not* check profile
conformance when opening. Behaving in this way is necessary
to deal with things like proprietary custom tags, for example.

Regards
Marti





------------------------------------------------------------------------------
Get your SQL database under version control now!
Version control is standard for application code, but databases havent 
caught up. So what steps can you take to put your SQL databases under 
version control? Why should you start doing it? Read more to find out.
http://pubads.g.doubleclick.net/gampad/clk?id=49501711&iu=/4140/ostg.clktrk
_______________________________________________
Lcms-user mailing list
Lcms-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/lcms-user

Reply via email to