Mailing-List: contact cygwin-help AT sourceware DOT cygnus DOT com; run by ezmlm List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT sourceware DOT cygnus DOT com Delivered-To: mailing list cygwin AT sourceware DOT cygnus DOT com From: cgf AT cygnus DOT com (Chris Faylor) Newsgroups: cygnus.gnu-win32 Subject: Re: Wierd perl problem.. Date: 25 Oct 1999 02:13:30 GMT Organization: Cygnus Solutions Lines: 53 Message-ID: <7v0eca$s0o$1@cronkite.cygnus.com> References: <199910212318 DOT RAA03227 AT benson> <19991021214818 DOT B6885 AT cygnus DOT com> Reply-To: cygwin AT sourceware DOT cygnus DOT com NNTP-Posting-Host: rtl.cygnus.com X-Newsreader: trn 4.0-test70 (17 January 1999) To: cygwin AT sourceware DOT cygnus DOT com DJ-Gateway: from newsgroup cygnus.gnu-win32 Ok. I've just checked in changes that work around the problem "for me". They should be in the next snapshot. The problem was that a DLL in a forked child was not being loaded in exactly the same location as it was in the parent. So, when the parent tried to copy its memory to the child -- boom! I kludged around this by allocating memory up to the point where the DLL should be loaded. This is remarkably fragile and stupid but it seems to work. The DLL code looks like it is due for a rewrite. Maybe we'll have time to do that someday. So, if you're adventurous, try out the latest snapshot and see if dynamic loading in perl just miraculously "works" now. -chris In article <19991021214818 DOT B6885 AT cygnus DOT com>, Chris Faylor wrote: >I'm sorry. There is a problem with using dll's after a fork with perl. >That's what you're seeing. > >There is no workaround. I hope to fix this in the next couple of months. > >On Thu, Oct 21, 1999 at 05:18:29PM -0600, Steve Jorgensen wrote: >>I'm having a really strange perl problem under cygwin 1.0 >> >>One perl script produces the following output: >> >>0 0 [main] d:\Cygwin\contrib\bin\perl.exe 1114 fork_copy: loaded dll data/bss pass 0 failed, 0x14043000..0x1404300C, done 0, Win32 erro r 487 >> >>and then hangs that shell window half the time. >> >>This happens when the perl script is executing the following line of >>code: >> >>chop($LOCALHOST = `hostname`); >> >>hostname is in the path, and works fine. >> >>This only seems to happen if the script has a use FileHandle; line >>after the initialization stuff I describe above, another script with >>the exact same initialization section as the one described above works >>fine. >> >>Is there something I need to do to get the FileHandle stuff working >>under cygwin, or am I just out of luck? -- cgf AT cygnus DOT com http://www.cygnus.com/ -- Want to unsubscribe from this list? Send a message to cygwin-unsubscribe AT sourceware DOT cygnus DOT com