From: Matt Kraai Date: Wed, 20 Sep 2000 23:10:21 +0000 (-0000) Subject: Only remove directories when removing recursively. X-Git-Tag: 0_47~50 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=7c22b771625cee60ca37be7c4cd27f2c360d0aba;p=oweals%2Fbusybox.git Only remove directories when removing recursively. --- diff --git a/coreutils/rm.c b/coreutils/rm.c index 275c05946..c93a94ce1 100644 --- a/coreutils/rm.c +++ b/coreutils/rm.c @@ -45,6 +45,11 @@ static int fileAction(const char *fileName, struct stat *statbuf, void* junk) static int dirAction(const char *fileName, struct stat *statbuf, void* junk) { + if (recursiveFlag == FALSE) { + errno = EISDIR; + perror(fileName); + return (FALSE); + } if (rmdir(fileName) < 0) { perror(fileName); return (FALSE); diff --git a/rm.c b/rm.c index 275c05946..c93a94ce1 100644 --- a/rm.c +++ b/rm.c @@ -45,6 +45,11 @@ static int fileAction(const char *fileName, struct stat *statbuf, void* junk) static int dirAction(const char *fileName, struct stat *statbuf, void* junk) { + if (recursiveFlag == FALSE) { + errno = EISDIR; + perror(fileName); + return (FALSE); + } if (rmdir(fileName) < 0) { perror(fileName); return (FALSE);