changeset 8580:8c17211e9154

* m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Don't bother to try to remove a parent directory if the child couldn't be removed (except for the first rmdir, which could fail because the child doesn't exist). Problem reported by Jeff Blaine in <http://lists.gnu.org/archive/html/bug-tar/2007-03/msg00014.html>.
author Paul Eggert <eggert@cs.ucla.edu>
date Thu, 29 Mar 2007 21:57:53 +0000
parents dbe34a6a6276
children 7600b64d20c8
files ChangeLog m4/getcwd-path-max.m4
diffstat 2 files changed, 12 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2007-03-29  Paul Eggert  <eggert@cs.ucla.edu>
+
+	* m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Don't bother to
+	try to remove a parent directory if the child couldn't be removed
+	(except for the first rmdir, which could fail because the child
+	doesn't exist).  Problem reported by Jeff Blaine in
+	<http://lists.gnu.org/archive/html/bug-tar/2007-03/msg00014.html>.
+
 2007-03-28  Bruno Haible  <bruno@clisp.org>
 
 	* lib/striconveh.c (utf8conv_carefully): New function.
--- a/m4/getcwd-path-max.m4
+++ b/m4/getcwd-path-max.m4
@@ -1,4 +1,4 @@
-#serial 12
+#serial 13
 # Check for several getcwd bugs with long file names.
 # If so, arrange to compile the wrapper function.
 
@@ -6,7 +6,7 @@
 # I've heard that this is due to a Linux kernel bug, and that it has
 # been fixed between 2.4.21-pre3 and 2.4.21-pre4.  */
 
-# Copyright (C) 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
+# Copyright (C) 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -163,7 +163,8 @@
       {
 	if (chdir ("..") < 0)
 	  break;
-	rmdir (DIR_NAME);
+	if (rmdir (DIR_NAME) != 0)
+	  break;
       }
   }