We should not blindly set the home directory of the SYSTEM account (or
of Microsoft accounts) to `/home/<name>`, especially
`/etc/nsswitch.conf` defines `db_home: env`, in which case we want to
respect the `HOME` variable.

Signed-off-by: Johannes Schindelin <johannes.schinde...@gmx.de>
---
 winsup/cygwin/uinfo.cc | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/winsup/cygwin/uinfo.cc b/winsup/cygwin/uinfo.cc
index baa670478d..d493d29b3b 100644
--- a/winsup/cygwin/uinfo.cc
+++ b/winsup/cygwin/uinfo.cc
@@ -2234,7 +2234,11 @@ pwdgrp::fetch_account_from_windows (fetch_user_arg_t 
&arg, cyg_ldap *pldap)
         it to a well-known group here. */
       if (acc_type == SidTypeUser
          && (sid_sub_auth_count (sid) <= 3 || sid_id_auth (sid) == 11))
-       acc_type = SidTypeWellKnownGroup;
+       {
+         acc_type = SidTypeWellKnownGroup;
+         home = cygheap->pg.get_home ((PUSER_INFO_3) NULL, sid, dom, name,
+                                      fully_qualified_name);
+       }
       switch ((int) acc_type)
        {
        case SidTypeUser:
--
2.41.0.rc0.windows.1


Reply via email to