_impure_ptr uninitialized in DLLs?

Chris Faylor cgf@cygnus.com
Wed Jul 12 19:42:00 GMT 2000

On Wed, Jul 12, 2000 at 07:03:07PM +0100, Fifer, Eric wrote:
>>This should be fixed in CVS now.  It will require updating libcygwin.a.
>I'm still having problems.  The dlopen() flavor works now, but when
>linking against a normal DLL, environ is NULL in the main program.
>Here's another demonstration:

I see the problem.  I've been resisting the urge to rewrite the dll_init.cc
rat's nest.  I don't know how much longer I can hold out.

In scratching this bug I found another problem.  dll_init routines can use
malloc in some circumstances.  This means that there is a potential deadlock
situation since DLL initialization is serialized and malloc uses a mutex
to serialize its access.

Head.  hurts.


More information about the Cygwin-developers mailing list