diff options
author | Denys Vlasenko <vda.linux@googlemail.com> | 2015-10-07 21:01:47 +0200 |
---|---|---|
committer | Denys Vlasenko <vda.linux@googlemail.com> | 2015-10-07 21:01:47 +0200 |
commit | 8c0708a329618b20089eb9cedbe06522dd25d9be (patch) | |
tree | 3f4e3b93743ca02c4758a8e885b87b9147924c5d | |
parent | 305958dbd456d463a92c1fa4c85ceb69a8c7db32 (diff) | |
download | busybox-w32-8c0708a329618b20089eb9cedbe06522dd25d9be.tar.gz busybox-w32-8c0708a329618b20089eb9cedbe06522dd25d9be.tar.bz2 busybox-w32-8c0708a329618b20089eb9cedbe06522dd25d9be.zip |
find: support "find . -delete" idiom - do not try rmdir(".")
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
-rw-r--r-- | findutils/find.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/findutils/find.c b/findutils/find.c index f72cad7d1..bd7ccc323 100644 --- a/findutils/find.c +++ b/findutils/find.c | |||
@@ -768,7 +768,10 @@ ACTF(delete) | |||
768 | { | 768 | { |
769 | int rc; | 769 | int rc; |
770 | if (S_ISDIR(statbuf->st_mode)) { | 770 | if (S_ISDIR(statbuf->st_mode)) { |
771 | rc = rmdir(fileName); | 771 | /* "find . -delete" skips rmdir(".") */ |
772 | rc = 0; | ||
773 | if (NOT_LONE_CHAR(fileName, '.')) | ||
774 | rc = rmdir(fileName); | ||
772 | } else { | 775 | } else { |
773 | rc = unlink(fileName); | 776 | rc = unlink(fileName); |
774 | } | 777 | } |