shell32/tests: Fix test_GetDisplayName() to cope with a left-over
test directory.
Francois Gouget
fgouget at free.fr
Fri Feb 9 05:41:08 CST 2007
---
The shlfolder test must have been interrupted one day which caused it to
leave the '~/winetest' directory behind. Ever since it has
systematically failed because it was trying to create an existing
directory. This patch makes it more robust.
dlls/shell32/tests/shlfolder.c | 12 +++++++++---
1 files changed, 9 insertions(+), 3 deletions(-)
diff --git a/dlls/shell32/tests/shlfolder.c b/dlls/shell32/tests/shlfolder.c
index 15780ee..380ce0c 100644
--- a/dlls/shell32/tests/shlfolder.c
+++ b/dlls/shell32/tests/shlfolder.c
@@ -338,6 +338,7 @@ static void test_GetDisplayName(void)
HANDLE hTestFile;
WCHAR wszTestFile[MAX_PATH], wszTestFile2[MAX_PATH], wszTestDir[MAX_PATH];
char szTestFile[MAX_PATH], szTestDir[MAX_PATH];
+ DWORD attr;
STRRET strret;
LPSHELLFOLDER psfDesktop, psfPersonal;
IUnknown *psfFile;
@@ -364,10 +365,15 @@ static void test_GetDisplayName(void)
PathAddBackslashW(wszTestDir);
lstrcatW(wszTestDir, wszDirName);
+ /* Use ANSI file functions so this works on Windows 9x */
WideCharToMultiByte(CP_ACP, 0, wszTestDir, -1, szTestDir, MAX_PATH, 0, 0);
- result = CreateDirectoryA(szTestDir, NULL);
- ok(result, "CreateDirectoryA failed! Last error: %u\n", GetLastError());
- if (!result) return;
+ CreateDirectoryA(szTestDir, NULL);
+ attr=GetFileAttributesA(szTestDir);
+ if (attr == INVALID_FILE_ATTRIBUTES || !(attr & FILE_ATTRIBUTE_DIRECTORY))
+ {
+ ok(0, "unable to create the '%s' directory\n", szTestDir);
+ return;
+ }
lstrcpyW(wszTestFile, wszTestDir);
PathAddBackslashW(wszTestFile);
--
1.4.4.3
More information about the wine-patches
mailing list