From d6ff3328a280c7ea475daa52e8ae4d181c599506 Mon Sep 17 00:00:00 2001 From: proski Date: Wed, 14 Jun 2000 17:39:41 +0000 Subject: Fixed "rm foo" that had been broken while implementing "rm -- foo" git-svn-id: svn://busybox.net/trunk/busybox@647 69ca8d6d-28ef-0310-b511-8ec308f3f277 --- rm.c | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) (limited to 'rm.c') diff --git a/rm.c b/rm.c index 5901c5da9..b1cda3aed 100644 --- a/rm.c +++ b/rm.c @@ -68,14 +68,12 @@ extern int rm_main(int argc, char **argv) int stopIt=FALSE; struct stat statbuf; - if (argc < 2) { - usage(rm_usage); - } + argc--; argv++; /* Parse any options */ - while (--argc >= 0 && *argv && **argv && stopIt==FALSE) { - while (**argv == '-') { + while (argc > 0 && stopIt == FALSE) { + if (**argv == '-') { while (*++(*argv)) switch (**argv) { case 'R': @@ -91,8 +89,15 @@ extern int rm_main(int argc, char **argv) default: usage(rm_usage); } + argc--; + argv++; } - argv++; + else + break; + } + + if (argc < 1 && forceFlag == FALSE) { + usage(rm_usage); } while (argc-- > 0) { -- cgit v1.2.3-55-g6feb