Use temp to construct dirspec in File::Find (Charles Lane)
Charles Bailey [Thu, 2 Mar 2000 03:57:40 +0000 (03:57 +0000)]
p4raw-id: //depot/vmsperl@5422

lib/File/Find.pm

index 074cff3..165ab9c 100644 (file)
@@ -515,8 +515,9 @@ sub _find_dir($$$) {
        if ( defined ($SE = pop @Stack) ) {
            ($Level, $p_dir, $dir_rel, $nlink) = @$SE;
            if ($CdLvl > $Level && !$no_chdir) {
-               die "Can't cd to $dir_name" . '../' x ($CdLvl-$Level)
-                   unless  chdir '../' x ($CdLvl-$Level);
+                my $tmp = join('/',('..') x ($CdLvl-$Level));
+                die "Can't cd to $dir_name" . $tmp
+                    unless chdir ($tmp);
                $CdLvl = $Level;
            }
            $dir_name = ($p_dir eq '/' ? "/$dir_rel" : "$p_dir/$dir_rel");