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