aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--loginutils/adduser.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/loginutils/adduser.c b/loginutils/adduser.c
index a0d4872ec..a640ece3b 100644
--- a/loginutils/adduser.c
+++ b/loginutils/adduser.c
@@ -96,6 +96,7 @@ static void passwd_wrapper(const char *login)
static int adduser(struct passwd *p, unsigned long flags)
{
FILE *file;
+ int addgroup = !p->pw_gid;
/* make sure everything is kosher and setup uid && gid */
file = bb_xfopen(bb_path_passwd_file, "a");
@@ -132,9 +133,8 @@ static int adduser(struct passwd *p, unsigned long flags)
/* add to group */
/* addgroup should be responsible for dealing w/ gshadow */
/* if using a pre-existing group, don't create one */
- if (p->pw_gid == 0) {
- addgroup_wrapper(p);
- }
+ if (addgroup) addgroup_wrapper(p);
+
/* Clear the umask for this process so it doesn't
* * screw up the permissions on the mkdir and chown. */
umask(0);