[SHELL32_WINETEST]
[reactos.git] / rostests / winetests / shell32 / shfldr_special.c
index cfb31be..6d61220 100644 (file)
@@ -77,6 +77,7 @@ static void test_parse_for_entire_network(void)
     attr = ~0;
 
     hr = IShellFolder_ParseDisplayName(psfDesktop, NULL, NULL, entire_network_path, &eaten, &pidl, &attr);
+    IShellFolder_Release(psfDesktop);
     if (hr == HRESULT_FROM_WIN32(ERROR_BAD_NET_NAME) ||
         hr == HRESULT_FROM_WIN32(ERROR_NO_NET_OR_BAD_PATH) ||
         hr == HRESULT_FROM_WIN32(ERROR_INVALID_PARAMETER))
@@ -125,6 +126,7 @@ static void test_parse_for_control_panel(void)
        "Unexpected attributes : %08x\n", attr);
 
     ILFree(pidl);
+    IShellFolder_Release(psfDesktop);
 }
 
 static void test_printers_folder(void)
@@ -222,9 +224,24 @@ if (0)
     CoUninitialize();
 }
 
+static void test_desktop_folder(void)
+{
+    IShellFolder *psf;
+    HRESULT hr;
+
+    hr = SHGetDesktopFolder(&psf);
+    ok(hr == S_OK, "Got %x\n", hr);
+
+    hr = IShellFolder_QueryInterface(psf, &IID_IShellFolder, NULL);
+    ok(hr == E_POINTER, "Got %x\n", hr);
+
+    IShellFolder_Release(psf);
+}
+
 START_TEST(shfldr_special)
 {
     test_parse_for_entire_network();
     test_parse_for_control_panel();
     test_printers_folder();
+    test_desktop_folder();
 }