shell32: Fix definitions for FOLDERID_ProgramFilesX64 and FOLDERID_ProgramFilesCommonX64 on 64-bit.

Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
stable
Hans Leidekker 2019-11-14 13:24:09 +01:00 committed by Alexandre Julliard
parent 925a88d1f7
commit 3ca6b296da
2 changed files with 34 additions and 0 deletions

View File

@ -2697,9 +2697,15 @@ static const CSIDL_DATA CSIDL_Data[] =
},
{ /* 0x54 */
&FOLDERID_ProgramFilesX64,
#ifdef _WIN64
CSIDL_Type_CurrVer,
ProgramFilesDirW,
Program_FilesW,
#else
CSIDL_Type_NonExistent,
NULL,
NULL,
#endif
KF_CATEGORY_FIXED, /* category */
ProgramFilesX64W, /* name */
@ -2717,9 +2723,15 @@ static const CSIDL_DATA CSIDL_Data[] =
},
{ /* 0x55 */
&FOLDERID_ProgramFilesCommonX64,
#ifdef _WIN64
CSIDL_Type_CurrVer,
ProgramFilesCommonX64W,
Program_Files_Common_FilesW,
#else
CSIDL_Type_NonExistent,
NULL,
NULL,
#endif
KF_CATEGORY_FIXED, /* category */
ProgramFilesCommonX64W, /* name */

View File

@ -1932,6 +1932,28 @@ if (0) { /* crashes */
hr = pSHGetFolderPathEx(&FOLDERID_Desktop, 0, NULL, buffer, len + 1);
ok(hr == S_OK, "expected S_OK, got 0x%08x\n", hr);
path = NULL;
hr = pSHGetKnownFolderPath(&FOLDERID_ProgramFilesX64, 0, NULL, &path);
#ifdef _WIN64
ok(hr == S_OK, "got 0x%08x\n", hr);
ok(path != NULL, "path not set\n");
CoTaskMemFree(path);
#else
todo_wine ok(hr == HRESULT_FROM_WIN32(ERROR_FILE_NOT_FOUND), "got 0x%08x\n", hr);
ok(path == NULL, "path set\n");
#endif
path = NULL;
hr = pSHGetKnownFolderPath(&FOLDERID_ProgramFilesCommonX64, 0, NULL, &path);
#ifdef _WIN64
ok(hr == S_OK, "expected S_OK, got 0x%08x\n", hr);
ok(path != NULL, "path not set\n");
CoTaskMemFree(path);
#else
todo_wine ok(hr == HRESULT_FROM_WIN32(ERROR_FILE_NOT_FOUND), "got 0x%08x\n", hr);
ok(path == NULL, "path set\n");
#endif
}
static BOOL is_in_strarray(const WCHAR *needle, const char *hay)