* tests/CuTmpdir.pm (END): Do not do the cleanup if $dir is not
authorRalf Wildenhues <Ralf.Wildenhues@gmx.de>
Fri, 30 Nov 2007 07:53:38 +0000 (08:53 +0100)
committerJim Meyering <meyering@redhat.com>
Fri, 30 Nov 2007 07:53:38 +0000 (08:53 +0100)
defined, because it then goes wild and changes the mode of all
directories below $HOME.  Undefined $dir can happen if the test
is to be skipped because of an unsafe working directory name.

ChangeLog
tests/CuTmpdir.pm

index 38401db1dc042826eb3dff261f30fb954beb109b..8a080b1dc74e3c345938d53321fd90f09b06e3d9 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2007-11-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
+
+       * tests/CuTmpdir.pm (END): Do not do the cleanup if $dir is not
+       defined, because it then goes wild and changes the mode of all
+       directories below $HOME.  Undefined $dir can happen if the test
+       is to be skipped because of an unsafe working directory name.
+
 2007-11-28  Paul Eggert  <eggert@cs.ucla.edu>
 
        Close a file descriptor leak when cp --preserve=context fails.
index f8d43d5ff7d565051c2d8d871bba073ae64503d1..38bc7245ed533ccf6f0839a93f4fe66984cda13f 100644 (file)
@@ -64,11 +64,14 @@ sub wanted
 
 END {
   my $saved_errno = $?;
-  chdir $dir
-    or warn "$ME: failed to chdir to $dir: $!\n";
-  # Perform the equivalent of find . -type d -print0|xargs -0 chmod -R 700.
-  my $options = {untaint => 1, wanted => \&wanted};
-  find ($options, '.');
+  if (defined $dir)
+    {
+      chdir $dir
+       or warn "$ME: failed to chdir to $dir: $!\n";
+      # Perform the equivalent of find . -type d -print0|xargs -0 chmod -R 700.
+      my $options = {untaint => 1, wanted => \&wanted};
+      find ($options, '.');
+    }
   $? = $saved_errno;
 }