Hi, I am writing this because I just discovered a bad interaction between libgs, lcms2 and poppler.
Let me describe the situation first: * User is using Okular[1] to view documents * User opens a PS file. Okular loads a plugin that uses libgs to open the file * libgs calls cmsPluginTHR to set its own memory handler * User closes PS file. Okular unloads the plugin that uses libgs * User opens a PDF file. Okular loads a plugin that uses poppler to open the file * poppler uses lcms calls and since cmsPluginTHR was set by libgs but never reset when the libgs plugin was destroyed, lcms crashes The only solution I can think of from my side is never unloading the plugin that uses libgs, but I'd like not to get there. I looked at lcms code and doesn't seem to be a way for libgs to unload it's plugin (there seems to be a unloadAll, but that would not be a good idea either). Do you think it makes sense for lcms to provide such a functionality? Or anyone has a better idea? Cheers, Albert [1] http://okular.kde.org/ ------------------------------------------------------------------------------ CenturyLink Cloud: The Leader in Enterprise Cloud Services. Learn Why More Businesses Are Choosing CenturyLink Cloud For Critical Workloads, Development Environments & Everything In Between. Get a Quote or Start a Free Trial Today. http://pubads.g.doubleclick.net/gampad/clk?id=119420431&iu=/4140/ostg.clktrk _______________________________________________ Lcms-user mailing list Lcms-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/lcms-user