Module: wine Branch: master Commit: f014487f9e4fc24d6a049abc967fd86ab5afef1e URL: http://source.winehq.org/git/wine.git/?a=commit;h=f014487f9e4fc24d6a049abc96...
Author: Marcus Meissner meissner@suse.de Date: Wed Sep 7 15:18:58 2011 +0200
netapi32: Check for GetUserNameW return (Coverity).
---
dlls/netapi32/access.c | 5 ++++- dlls/netapi32/local_group.c | 4 +++- 2 files changed, 7 insertions(+), 2 deletions(-)
diff --git a/dlls/netapi32/access.c b/dlls/netapi32/access.c index 255e51b..7cd05fc 100644 --- a/dlls/netapi32/access.c +++ b/dlls/netapi32/access.c @@ -437,7 +437,10 @@ NetUserGetLocalGroups(LPCWSTR servername, LPCWSTR username, DWORD level,
size = UNLEN + 1; NetApiBufferAllocate(size * sizeof(WCHAR), (LPVOID*)¤tuser); - GetUserNameW(currentuser, &size); + if (!GetUserNameW(currentuser, &size)) { + NetApiBufferFree(currentuser); + return ERROR_NOT_ENOUGH_MEMORY; + }
if (lstrcmpiW(username, currentuser) && NETAPI_FindUser(username)) { diff --git a/dlls/netapi32/local_group.c b/dlls/netapi32/local_group.c index 7f7d3c1..f4f4214 100644 --- a/dlls/netapi32/local_group.c +++ b/dlls/netapi32/local_group.c @@ -196,7 +196,9 @@ NET_API_STATUS WINAPI NetLocalGroupGetMembers( *entriesread = 0;
userNameLen = MAX_COMPUTERNAME_LENGTH + 1; - GetUserNameW(userName,&userNameLen); + if (!GetUserNameW(userName,&userNameLen)) + return ERROR_NOT_ENOUGH_MEMORY; + needlen = sizeof(LOCALGROUP_MEMBERS_INFO_3) + (userNameLen+2) * sizeof(WCHAR); if (prefmaxlen != MAX_PREFERRED_LENGTH)