Mail Archives: cygwin/2005/07/25/11:41:25
Christopher Faylor wrote:
> On Fri, Jul 22, 2005 at 03:16:29PM -0500, Scott Bolte wrote:
>
>>On Thu, 21 Jul 2005 00:14:51 -0700, Michael G Schwern wrote:
>>
>>>
>>>Its gotta be something about _default_inc(). Nothing looks wrong from
>>>here. My only guess is that local $ENV{PERL5LIB} is ineffective. That
>>>would account for the alternation.
>>
>> It's not just the local scoping. There is something
>> seriously unexpected with environment variables, perl
>> and cygwin.
>>
>> ----- th4.pl
>> #!/usr/bin/perl
>> use strict;
>> use warnings;
>>
>> $ENV{SHOULD_NEVER_BE_SEEN} = "hello world";
>> delete($ENV{SHOULD_NEVER_BE_SEEN});
>> system("printenv | grep SHOULD_NEVER_BE_SEEN");
>>
>> On UNIX systems that script properly prints nothing. Not so
>> on my cygwin (on top of XP) system:
>>
>> cygwin% perl ~/th4.pl
>> SHOULD_NEVER_BE_SEEN=hello world
>>
>> It seems to imply that the results of unsetenv(3) are not
>> persistent across an exec(2).
>
>
> ....or that perl isn't using unsetenv, since AFAICT, unsetenv() is operating
> as it should for both cygwin and non-cygwin processes.
>
> This was a standard problem way way back when I was maintaining my own
> version of perl for cygwin (since cygwin didn't include perl). There was
> special code in perl to deal with cygwin's environment, IIRC. Maybe it's
> broken in 5.8.7.
>
> cgf
Indeed, I see no unsetenv() in the perl sources.
Since it seems that the problem is independent of TH the problem should
be located in perl itself. I'll try with a recent devel version to see
if it fails here too. Scott, have you tried te above script with other
(older) versions of Cygwin perl too? Since TH works with perl-5.8.6 I
suspect some of the changes integrated into maint perl to be problematic
for Cygwin, however it may also be an older bug in Cygwin perl.
Gerrit
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Problem reports: http://cygwin.com/problems.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/
- Raw text -