Hi,
Yes, dlcompat source code uses a mutex to protect its use of
NSAddImage. Apple thanks the authors of dlcompat for its own dlfcn.h
implementations. So it appears that Patrick's module.c patch to add
synchronization is required.
So please commit Patrick's patch until we get a chance to back out
all of this MACOSX specific code in favor of the standard unix
versions of dlopen, dlclose, etc now recommended by Apple for MacOSX
10.3 and 10.4.
Kevin
On Oct 21, 2005, at 9:15 AM, Kevin B. Hendricks wrote:
Hi,
I think that adding synchronization in module.c patch is just fine
here. There is nothing global being used in the code as far as I
can tell that would prevent it from being re-entrant. So the calls
to NSAddImage which are internal MacOSX routines must be the
culprit here. It would be interesting to look at the libdl code to
see if it uses a mutex when using similar functions. Any
additional overhead of obtaining a mutex would be meaningless next
to the time to actually load any shared library.
I would go ahead and commit the change since it can do no damage.
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]