summaryrefslogtreecommitdiff
path: root/Master/tlpkg/tlperl/lib/File/Find.pm
diff options
context:
space:
mode:
Diffstat (limited to 'Master/tlpkg/tlperl/lib/File/Find.pm')
-rw-r--r--Master/tlpkg/tlperl/lib/File/Find.pm14
1 files changed, 8 insertions, 6 deletions
diff --git a/Master/tlpkg/tlperl/lib/File/Find.pm b/Master/tlpkg/tlperl/lib/File/Find.pm
index d1dbc522584..6cfdb59aef3 100644
--- a/Master/tlpkg/tlperl/lib/File/Find.pm
+++ b/Master/tlpkg/tlperl/lib/File/Find.pm
@@ -3,7 +3,7 @@ use 5.006;
use strict;
use warnings;
use warnings::register;
-our $VERSION = '1.23';
+our $VERSION = '1.27';
require Exporter;
require Cwd;
@@ -299,7 +299,7 @@ situations. You can disable these warnings by putting the statement
no warnings 'File::Find';
-in the appropriate scope. See L<perllexwarn> for more info about lexical
+in the appropriate scope. See L<warnings> for more info about lexical
warnings.
=head1 CAVEAT
@@ -488,7 +488,7 @@ sub _find_opt {
$cwd = VMS::Filespec::unixpath($cwd);
# Apparently this is not expected to have a trailing space.
- # To attempt to make VMS/UNIX conversions mostly reversable,
+ # To attempt to make VMS/UNIX conversions mostly reversible,
# a trailing slash is needed. The run-time functions ignore the
# resulting double slash, but it causes the perl tests to fail.
$cwd =~ s#/\z##;
@@ -809,7 +809,7 @@ sub _find_dir($$$) {
else {
$tmp = join('/',('..') x ($CdLvl-$Level));
}
- die "Can't cd to $tmp from $dir_name"
+ die "Can't cd to $tmp from $dir_name: $!"
unless chdir ($tmp);
$CdLvl = $Level;
}
@@ -982,14 +982,16 @@ sub _find_dir_symlnk($$$) {
# ignore if invalid symlink
unless (defined $new_loc) {
if (!defined -l _ && $dangling_symlinks) {
+ $fullname = undef;
if (ref $dangling_symlinks eq 'CODE') {
$dangling_symlinks->($FN, $dir_pref);
} else {
warnings::warnif "$dir_pref$FN is a dangling symbolic link\n";
}
}
-
- $fullname = undef;
+ else {
+ $fullname = $loc_pref . $FN;
+ }
$name = $dir_pref . $FN;
$_ = ($no_chdir ? $name : $FN);
{ $wanted_callback->() };