Cygwin: load_user_profile: chack if we got a valid, known domainname
...otherwise we may suffer a SEGV because dnsdomain is NULL. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
This commit is contained in:
parent
495ae41891
commit
5d9ac1291d
@ -288,17 +288,22 @@ load_user_profile (HANDLE token, struct passwd *pw, cygpsid &usersid)
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (cldap.fetch_ad_account (usersid, false, dnsdomain))
|
if (dnsdomain)
|
||||||
{
|
{
|
||||||
PWCHAR val = cldap.get_profile_path ();
|
if (cldap.fetch_ad_account (usersid, false, dnsdomain))
|
||||||
if (val && *val)
|
|
||||||
{
|
{
|
||||||
wcsncpy (userpath, val, MAX_PATH - 1);
|
PWCHAR val = cldap.get_profile_path ();
|
||||||
userpath[MAX_PATH - 1] = L'\0';
|
if (val && *val)
|
||||||
pi.lpProfilePath = userpath;
|
{
|
||||||
|
wcsncpy (userpath, val, MAX_PATH - 1);
|
||||||
|
userpath[MAX_PATH - 1] = L'\0';
|
||||||
|
pi.lpProfilePath = userpath;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
free (dnsdomain);
|
||||||
}
|
}
|
||||||
free (dnsdomain);
|
else
|
||||||
|
debug_printf ("Unknown domain <%W>?", domain);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!LoadUserProfileW (token, &pi))
|
if (!LoadUserProfileW (token, &pi))
|
||||||
|
Loading…
x
Reference in New Issue
Block a user