Change 30035 by [EMAIL PROTECTED] on 2007/01/27 17:19:12
For VMS, a belated entry into the $^O jungle that is
File::Find::_find_dir.
Affected files ...
... //depot/perl/lib/File/Find.pm#89 edit
Differences ...
==== //depot/perl/lib/File/Find.pm#89 (text) ====
Index: perl/lib/File/Find.pm
--- perl/lib/File/Find.pm#88~29115~ 2006-10-26 07:08:03.000000000 -0700
+++ perl/lib/File/Find.pm 2007-01-27 09:19:12.000000000 -0800
@@ -780,6 +780,8 @@
$dir_pref= ($p_dir =~ /:$/) ? $p_dir : "$p_dir:"; # preface
} elsif ($^O eq 'MSWin32') {
$dir_pref = ($p_dir =~ m|\w:/$| ? $p_dir : "$p_dir/" );
+ } elsif ($^O eq 'VMS') {
+ $dir_pref = ($p_dir =~ m/[\]>]+$/ ? $p_dir : "$p_dir/" );
}
else {
$dir_pref= ( $p_dir eq '/' ? '/' : "$p_dir/" );
@@ -953,6 +955,17 @@
$dir_name = ($p_dir =~ m|\w:/$| ? "$p_dir$dir_rel" :
"$p_dir/$dir_rel");
$dir_pref = "$dir_name/";
}
+ elsif ($^O eq 'VMS') {
+ if ($p_dir =~ m/[\]>]+$/) {
+ $dir_name = $p_dir;
+ $dir_name =~ s/([\]>]+)$/.$dir_rel$1/;
+ $dir_pref = $dir_name;
+ }
+ else {
+ $dir_name = "$p_dir/$dir_rel";
+ $dir_pref = "$dir_name/";
+ }
+ }
else {
$dir_name = ($p_dir eq '/' ? "/$dir_rel" : "$p_dir/$dir_rel");
$dir_pref = "$dir_name/";
End of Patch.