summaryrefslogtreecommitdiff
path: root/lib/File/Path.pm
diff options
context:
space:
mode:
authorGurusamy Sarathy <gsar@cpan.org>1998-05-14 09:06:18 +0000
committerGurusamy Sarathy <gsar@cpan.org>1998-05-14 09:06:18 +0000
commit491527d0220de34ec13035d557e288c9952d1007 (patch)
tree683ef586eb7bbf72dee104e2b0fd44cc8298b444 /lib/File/Path.pm
parenta3cb178b0bad32fa8be934503d051b96a3cb1fea (diff)
downloadperl-491527d0220de34ec13035d557e288c9952d1007.tar.gz
[win32] merge change#886 from maintbranch
p4raw-link: @886 on //depot/maint-5.004/perl: 6dba07070c2cb08ffbc6e00eff60e8f5fc9a7ee8 p4raw-id: //depot/win32/perl@936
Diffstat (limited to 'lib/File/Path.pm')
-rw-r--r--lib/File/Path.pm6
1 files changed, 5 insertions, 1 deletions
diff --git a/lib/File/Path.pm b/lib/File/Path.pm
index 6b5d5683f1..39f1ba1771 100644
--- a/lib/File/Path.pm
+++ b/lib/File/Path.pm
@@ -124,11 +124,15 @@ sub mkpath {
$paths = [$paths] unless ref $paths;
my(@created,$path);
foreach $path (@$paths) {
+ $path .= '/' if $^O eq 'os2' and $path =~ /^\w:$/; # feature of CRT
next if -d $path;
# Logic wants Unix paths, so go with the flow.
$path = VMS::Filespec::unixify($path) if $Is_VMS;
my $parent = File::Basename::dirname($path);
- push(@created,mkpath($parent, $verbose, $mode)) unless (-d $parent);
+ # Allow for creation of new logical filesystems under VMS
+ if (not $Is_VMS or $parent !~ m:/[^/]+/000000/?:) {
+ push(@created,mkpath($parent, $verbose, $mode)) unless (-d $parent);
+ }
print "mkdir $path\n" if $verbose;
unless (mkdir($path,$mode)) {
# allow for another process to have created it meanwhile