From: Jim Meyering Date: Sat, 8 Dec 2007 23:56:02 +0000 (+0100) Subject: "rm" as root would fail to unlink a non-directory on OS X 10.4.x X-Git-Tag: v6.9.91~6 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=de5b055bbf6c77246826f1276c2a5b9c7264b2bf;p=platform%2Fupstream%2Fcoreutils.git "rm" as root would fail to unlink a non-directory on OS X 10.4.x * src/remove.c (remove_entry) ["can unlink directories"]: Fix a mistakenly reversed condition. * NEWS: Mention this bug fix. Reported by Pieter Bowman. --- diff --git a/ChangeLog b/ChangeLog index f9686a6..d2f2f31 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +2007-12-09 Jim Meyering + + "rm" as root would fail to unlink a non-directory on OS X 10.4.x + * src/remove.c (remove_entry) ["can unlink directories"]: Fix a + mistakenly reversed condition. + * NEWS: Mention this bug fix. + Reported by Pieter Bowman. + 2007-12-08 Jim Meyering * src/c99-to-c89.diff: Adjust shred.c offsets. diff --git a/NEWS b/NEWS index c6a0511..e5e59a6 100644 --- a/NEWS +++ b/NEWS @@ -2,6 +2,10 @@ GNU coreutils NEWS -*- outline -*- * Noteworthy changes in release 6.9.91 (????-??-??) [beta] + "rm" would fail to unlink a non-directory when run in an environment + in which the user running rm is capable of unlinking a directory. + [bug introduced in coreutils-6.9] + * Noteworthy changes in release 6.9.90 (2007-12-01) [beta] diff --git a/THANKS b/THANKS index 0b0124b..f91c262 100644 --- a/THANKS +++ b/THANKS @@ -424,6 +424,7 @@ Philippe De Muyter phdm@macqel.be Philippe Schnoebelen Philippe.Schnoebelen@imag.fr Phillip Jones mouse@datastacks.com Piergiorgio Sartor sartor@sony.de +Pieter Bowman bowman@math.utah.edu Piotr Kwapulinski kwap@univ.gda.pl Prashant TR tr@eth.net Rainer Orth ro@TechFak.Uni-Bielefeld.DE diff --git a/src/remove.c b/src/remove.c index 11e2ccb..de8f5ff 100644 --- a/src/remove.c +++ b/src/remove.c @@ -1150,7 +1150,7 @@ remove_entry (int fd_cwd, Dirstack_state const *ds, char const *filename, dirent_type = DT_DIR; } - if (dirent_type == DT_DIR) + if (dirent_type != DT_DIR) { /* At this point, barring race conditions, FILENAME is known to be a non-directory, so it's ok to try to unlink it. */