This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
The #11931 patching misbehaved.
[perl5.git] / lib / getcwd.pl
index a3214ba..eca6ba1 100644 (file)
@@ -1,5 +1,14 @@
 # By Brandon S. Allbery
 #
+# This library is no longer being maintained, and is included for backward
+# compatibility with Perl 4 programs which may require it.
+#
+# In particular, this should not be used as an example of modern Perl
+# programming techniques.
+#
+# Suggested alternative: Cwd
+#
+#
 # Usage: $cwd = &getcwd;
 
 sub getcwd
@@ -36,7 +45,7 @@ sub getcwd
        {
            do
            {
-               unless ($dir = readdir(getcwd'PARENT))                  #'))
+               unless (defined ($dir = readdir(getcwd'PARENT)))        #'))
                {
                    warn "readdir($dotdots): $!";
                    closedir(getcwd'PARENT);                            #');
@@ -44,9 +53,9 @@ sub getcwd
                }
                unless (@tst = lstat("$dotdots/$dir"))
                {
-                   warn "lstat($dotdots/$dir): $!";
-                   closedir(getcwd'PARENT);                            #');
-                   return '';
+                   warn "lstat($dotdots/$dir): $!";
+                   # closedir(getcwd'PARENT);                          #');
+                   return '';
                }
            }
            while ($dir eq '.' || $dir eq '..' || $tst[$[] != $pst[$[] ||
@@ -54,7 +63,7 @@ sub getcwd
        }
        $cwd = "$dir/$cwd";
        closedir(getcwd'PARENT);                                        #');
-    } while ($dir);
+    } while ($dir ne '');
     chop($cwd);
     $cwd;
 }