>> 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

Reply via email to