>> 1) Any client using THR functions and the lib as shared object >> is basically broken. if a client sets a listener or plug-in, >> it got events from any other clients of the .so, with >> obviously unexpected user data format. This causes segfaults. > > Right, and in the case of the ghostscript guys that makes complete > sense. If you're a single threaded application or command line program > using lcms that argument breaks down somewhat.
Actually those are affected as well. Just imagine you have a daemon running in the background and calling lcms .so across a THR function. This program has set its own memory management and passes some pointers across the user data of THR. Then you run a command line, that also makes use of plug-ins and THR. Guess what? the callbacks got destroyed and then the daemon crashes suddenly without any trace of what happening. This is is real issue. I got some reports of that. And there is no way to solve it other than using static libraries or use some context handling like the one I have introduced in this release. Now you say you are not happy with the guessing of what is and what is not a valid user data. This is *THE* issue. If we could figure out how to solve that, we could provide automatic ABI compatibility and get rid of all pain of .soname bump, but I have not been able, at least not yet. Any ideas would really been appreciated. The problem is how to identify a cmsContext and differentiate from a user-defined pointer wide data. Valgrid complains and I'm concerned about that, but in some cases it keeps working. Fixing the cases it does not work is actually my first headache. Regards Marti ------------------------------------------------------------------------------ Android apps run on BlackBerry 10 Introducing the new BlackBerry 10.2.1 Runtime for Android apps. Now with support for Jelly Bean, Bluetooth, Mapview and more. Get your Android app in front of a whole new audience. Start now. http://pubads.g.doubleclick.net/gampad/clk?id=124407151&iu=/4140/ostg.clktrk _______________________________________________ Lcms-user mailing list Lcms-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/lcms-user