aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--coreutils/chown.c11
1 files changed, 4 insertions, 7 deletions
diff --git a/coreutils/chown.c b/coreutils/chown.c
index 98f9d9788..888c3fc89 100644
--- a/coreutils/chown.c
+++ b/coreutils/chown.c
@@ -17,8 +17,8 @@
17#include <string.h> 17#include <string.h>
18#include "busybox.h" 18#include "busybox.h"
19 19
20static long uid; 20static uid_t uid = -1;
21static long gid; 21static gid_t gid = -1;
22 22
23static int (*chown_func)(const char *, uid_t, gid_t) = chown; 23static int (*chown_func)(const char *, uid_t, gid_t) = chown;
24 24
@@ -57,15 +57,12 @@ int chown_main(int argc, char **argv)
57 groupName = strchr(*argv, ':'); 57 groupName = strchr(*argv, ':');
58 } 58 }
59 59
60 gid = -1; 60 /* Check for the username and groupname */
61 if (groupName) { 61 if (groupName) {
62 *groupName++ = '\0'; 62 *groupName++ = '\0';
63 gid = get_ug_id(groupName, bb_xgetgrnam); 63 gid = get_ug_id(groupName, bb_xgetgrnam);
64 } 64 }
65 65 if (--groupName != *argv) uid = get_ug_id(*argv, bb_xgetpwnam);
66 /* Now check for the username */
67 uid = get_ug_id(*argv, bb_xgetpwnam);
68
69 ++argv; 66 ++argv;
70 67
71 /* Ok, ready to do the deed now */ 68 /* Ok, ready to do the deed now */