diff options
Diffstat (limited to 'Master/tlpkg/tlperl/lib/File/Find.pm')
-rw-r--r-- | Master/tlpkg/tlperl/lib/File/Find.pm | 14 |
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->() }; |