SHELL32/tests: fix generation of some more exceptions on winME

Saulius Krasuckas saulius2 at ar.fi.lt
Sun Aug 14 05:48:11 CDT 2005


Log message:
        Saulius Krasuckas <saulius.krasuckas at ieee.org>
        Fix some SHGetSpecialFolderPathA exceptions on WinME: 
	- pass pointer to valid buffer as lpszPath.
	- disable check passing NULL as lpszPath.


Index: dlls/shell32/tests/shellpath.c
===================================================================
RCS file: /home/wine/wine/dlls/shell32/tests/shellpath.c,v
retrieving revision 1.9
diff -p -u -r1.9 shellpath.c
--- dlls/shell32/tests/shellpath.c      3 Aug 2005 11:03:44 -0000       1.9
+++ dlls/shell32/tests/shellpath.c      14 Aug 2005 10:33:38 -0000
@@ -359,14 +359,16 @@ static void testSHGetSpecialFolderPathIn
 
     if (!pSHGetSpecialFolderPathA) return;
 
+#if 0
     ret = pSHGetSpecialFolderPathA(NULL, NULL, CSIDL_BITBUCKET, FALSE);
     ok(!ret,
      "SHGetSpecialFolderPathA(NULL, NULL, CSIDL_BITBUCKET, FALSE)\n"
      "returned TRUE, expected FALSE\n");
+#endif
     /* odd but true: calling with a NULL path still succeeds if it's a real
-     * dir
+     * dir (on some windows platform).  on winME it generates exception.
      */
-    ret = pSHGetSpecialFolderPathA(NULL, NULL, CSIDL_PROGRAMS, FALSE);
+    ret = pSHGetSpecialFolderPathA(NULL, path, CSIDL_PROGRAMS, FALSE);
     ok(ret,
      "SHGetSpecialFolderPathA(NULL, NULL, CSIDL_PROGRAMS, FALSE)\n"
      "returned FALSE, expected TRUE\n");
@@ -720,7 +722,7 @@ static void testNonExistentPath1(void)
 
     /* test some failure cases first: */
     hr = pSHGetFolderPathA(NULL, CSIDL_FAVORITES, NULL,
-     SHGFP_TYPE_CURRENT, NULL);
+     SHGFP_TYPE_CURRENT, path);
     ok(hr == HRESULT_FROM_WIN32(ERROR_FILE_NOT_FOUND),
      "SHGetFolderPath returned 0x%08lx, expected 0x80070002\n", hr);
     pidl = NULL;
@@ -768,9 +770,10 @@ static void testNonExistentPath1(void)
 static void testNonExistentPath2(void)
 {
     HRESULT hr;
+    char path[MAX_PATH];
 
     hr = pSHGetFolderPathA(NULL, CSIDL_FAVORITES | CSIDL_FLAG_CREATE, NULL,
-     SHGFP_TYPE_CURRENT, NULL);
+     SHGFP_TYPE_CURRENT, path);
     ok(SUCCEEDED(hr), "SHGetFolderPath failed: 0x%08lx\n", hr);
 }
 




More information about the wine-patches mailing list