Implement suggestion from Adam Slattery, (don't default to killing closing bug #1190.
[oweals/busybox.git] / chgrp.c
diff --git a/chgrp.c b/chgrp.c
index 739d09fb66ce8cccc8b88e885f5a4baf0172a9e1..fbc1036a86c9ef582887d7ddf41769f3b7f7718a 100644 (file)
--- a/chgrp.c
+++ b/chgrp.c
 #include <string.h>
 #include <unistd.h>
 #include "busybox.h"
-#define BB_DECLARE_EXTERN
-#define bb_need_invalid_option
-#define bb_need_too_few_args
-#include "messages.c"
 
 /* Don't use lchown for libc5 or glibc older then 2.1.x */
-#if (__GLIBC__ < 2) && (__GLIBC_MINOR__ < 1)
+#if (__GLIBC__ <= 2) && (__GLIBC_MINOR__ < 1)
 #define lchown chown
 #endif
 
 
-static long gid = -1;
+static long gid;
 
 static int fileAction(const char *fileName, struct stat *statbuf, void* junk)
 {
@@ -60,6 +56,7 @@ int chgrp_main(int argc, char **argv)
                switch (opt) {
                        case 'R':
                                recursiveFlag = TRUE;
+                               break;
                        default:
                                show_usage();
                }
@@ -75,7 +72,7 @@ int chgrp_main(int argc, char **argv)
        }
 
        /* Ok, ready to do the deed now */
-       while (optind++ < argc) {
+       while (++optind < argc) {
                if (recursive_action (argv[optind], recursiveFlag, FALSE, FALSE, 
                                        fileAction, fileAction, NULL) == FALSE) {
                        return EXIT_FAILURE;