9 Aug
2023
9 Aug
'23
1:44 p.m.
Hans Leidekker (@hans) commented about programs/whoami/main.c:
+ ERR("Memory allocation failed\n"); + return FALSE; }
- result = GetUserNameExW(NameSamCompatible, NULL, &size); - if (result || GetLastError() != ERROR_MORE_DATA) + result = GetUserNameExW(name_format, *name, &size); + if (!result) + { + ERR("GetUserNameExW failed, error %ld\n", GetLastError()); + return FALSE; + } + + return TRUE; +} + So get_user_name() could be simplified like this:
static WCHAR *get_user_name(EXTENDED_NAME_FORMAT name_format)
{
ULONG size;
WCHAR *ret;
if (GetUserNameExW(name_format, NULL, &size) || GetLastError() != ERROR_MORE_DATA) return NULL;
if (!(ret = malloc(size * sizeof(WCHAR)))) return NULL;
if ((GetUserNameExW(name_format, ret, &size))) return ret;
free(ret);
return NULL;
}
-- https://gitlab.winehq.org/wine/wine/-/merge_requests/3473#note_41798