Welcome to mirror list, hosted at ThFree Co, Russian Federation.

cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCorinna Vinschen <corinna@vinschen.de>2003-02-27 20:41:15 +0300
committerCorinna Vinschen <corinna@vinschen.de>2003-02-27 20:41:15 +0300
commit7b2ce66370f5e1a8a18dcc169acc9cfa8c1c7671 (patch)
tree33cedd2da301b07b6820b3bd38d1b187adf0aeb4 /winsup/cygwin/uinfo.cc
parent0e7a60fef95e17d33e46d5ce6d0c9b3be18adc99 (diff)
* uinfo.cc (internal_getlogin): Only update user.groups.pgsid
if the call to set the primary group succeeds.
Diffstat (limited to 'winsup/cygwin/uinfo.cc')
-rw-r--r--winsup/cygwin/uinfo.cc3
1 files changed, 2 insertions, 1 deletions
diff --git a/winsup/cygwin/uinfo.cc b/winsup/cygwin/uinfo.cc
index cb620d8f4..6b07ea437 100644
--- a/winsup/cygwin/uinfo.cc
+++ b/winsup/cygwin/uinfo.cc
@@ -83,10 +83,11 @@ internal_getlogin (cygheap_user &user)
if (gsid.getfromgr (internal_getgrgid (pw->pw_gid)))
{
/* Set primary group to the group in /etc/passwd. */
- user.groups.pgsid = gsid;
if (!SetTokenInformation (ptok, TokenPrimaryGroup,
&gsid, sizeof gsid))
debug_printf ("SetTokenInformation(TokenPrimaryGroup): %E");
+ else
+ user.groups.pgsid = gsid;
}
else
debug_printf ("gsid not found in augmented /etc/group");