From 092026cff08d8963457599a8f6395bd1f642aed4 Mon Sep 17 00:00:00 2001 From: Steve Hay Date: Wed, 28 Sep 2005 08:23:01 +0000 Subject: Improve File::Spec::Win32->path() and fix MM_Win32.t Subject: Improved File::Spec::Win32->path [PATCH] From: Gisle Aas Date: 17 Sep 2005 00:13:41 -0700 Message-ID: Subject: Re: Improved File::Spec::Win32->path [PATCH] From: Michael G Schwern Date: Tue, 27 Sep 2005 13:05:54 -0700 Message-ID: <20050927200554.GC20908@windhund.schwern.org> p4raw-id: //depot/perl@25627 --- lib/ExtUtils/t/MM_Win32.t | 7 +------ lib/File/Spec/Win32.pm | 9 +++++---- 2 files changed, 6 insertions(+), 10 deletions(-) (limited to 'lib') diff --git a/lib/ExtUtils/t/MM_Win32.t b/lib/ExtUtils/t/MM_Win32.t index ca870d5cb0..7acde33a94 100644 --- a/lib/ExtUtils/t/MM_Win32.t +++ b/lib/ExtUtils/t/MM_Win32.t @@ -163,15 +163,10 @@ delete $ENV{PATHEXT} unless $had_pathext; } # path() -my $had_path = exists $ENV{PATH}; { - my @path_eg = ( qw( . .. ), 'C:\\Program Files' ); - local $ENV{PATH} = join ';', @path_eg; - ok( eq_array( [ $MM->path() ], [ @path_eg ] ), + ok( eq_array( [ $MM->path() ], [ File::Spec->path ] ), 'path() [preset]' ); } -# Bug in Perl. local $ENV{FOO} will not delete key afterwards. -delete $ENV{PATH} unless $had_path; # static_lib() should look into that # dynamic_bs() should look into that diff --git a/lib/File/Spec/Win32.pm b/lib/File/Spec/Win32.pm index 94094f0fd7..2981ff9f2a 100644 --- a/lib/File/Spec/Win32.pm +++ b/lib/File/Spec/Win32.pm @@ -5,7 +5,7 @@ use strict; use vars qw(@ISA $VERSION); require File::Spec::Unix; -$VERSION = '1.5'; +$VERSION = '1.5_01'; @ISA = qw(File::Spec::Unix); @@ -108,9 +108,10 @@ sub catdir { } sub path { - my $path = $ENV{'PATH'} || $ENV{'Path'} || $ENV{'path'}; - my @path = split(';',$path); - foreach (@path) { $_ = '.' if $_ eq '' } + my @path = split(';', $ENV{PATH}); + s/"//g for @path; + @path = grep length, @path; + unshift(@path, "."); return @path; } -- cgit v1.2.1