Mailing-List: contact cygwin-developers-help AT sourceware DOT cygnus DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-developers-owner AT sources DOT redhat DOT com Delivered-To: mailing list cygwin-developers AT sources DOT redhat DOT com From: Chris Faylor Date: Wed, 12 Jul 2000 22:42:27 -0400 To: "'cygwin-developers AT sourceware DOT cygnus DOT com'" Subject: Re: _impure_ptr uninitialized in DLLs? Message-ID: <20000712224227.A7487@cygnus.com> Reply-To: cygwin-developers AT sourceware DOT cygnus DOT com Mail-Followup-To: "'cygwin-developers AT sourceware DOT cygnus DOT com'" References: <779F20BCCE5AD31186A50008C75D9979171746 AT silldn_mail1 DOT sanwaint DOT com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.2i In-Reply-To: <779F20BCCE5AD31186A50008C75D9979171746@silldn_mail1.sanwaint.com>; from EFifer@sanwaint.com on Wed, Jul 12, 2000 at 07:03:07PM +0100 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. cgf