[USERENV]

- GetProfilesDirectoryA: In case of success, return the length of the profiles directory.
- GetProfilesDirectoryW: Set ERROR_INSUFFICIENT_BUFFER, if lpProfilesDir is NULL.

svn path=/trunk/; revision=69837
This commit is contained in:
Eric Kohl 2015-11-07 19:47:24 +00:00
parent d7bf1738d4
commit 21f40234d7

View file

@ -687,14 +687,14 @@ GetProfilesDirectoryA(LPSTR lpProfileDir,
lpcchSize);
if (bResult)
{
WideCharToMultiByte(CP_ACP,
0,
lpBuffer,
-1,
lpProfileDir,
*lpcchSize,
NULL,
NULL);
bResult = WideCharToMultiByte(CP_ACP,
0,
lpBuffer,
-1,
lpProfileDir,
*lpcchSize,
NULL,
NULL);
}
GlobalFree(lpBuffer);
@ -713,6 +713,7 @@ GetProfilesDirectoryW(LPWSTR lpProfilesDir,
DWORD dwLength;
HKEY hKey;
LONG Error;
BOOL bRet = FALSE;
if (!lpcchSize)
{
@ -764,17 +765,22 @@ GetProfilesDirectoryW(LPWSTR lpProfilesDir,
{
if (*lpcchSize < dwLength)
{
*lpcchSize = dwLength;
SetLastError(ERROR_INSUFFICIENT_BUFFER);
return FALSE;
}
wcscpy(lpProfilesDir, szProfilesPath);
else
{
wcscpy(lpProfilesDir, szProfilesPath);
bRet = TRUE;
}
}
else
{
SetLastError(ERROR_INSUFFICIENT_BUFFER);
}
*lpcchSize = dwLength;
return TRUE;
return bRet;
}