[PATCH] Use return value on failure updated in Vista+

Nikolay Sivov nsivov at codeweavers.com
Thu Mar 4 05:22:49 CST 2010


---
 dlls/shell32/pidl.c            |    2 +-
 dlls/shell32/tests/shlfolder.c |    3 ++-
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/dlls/shell32/pidl.c b/dlls/shell32/pidl.c
index ecda891..99bbed8 100644
--- a/dlls/shell32/pidl.c
+++ b/dlls/shell32/pidl.c
@@ -1333,7 +1333,7 @@ HRESULT WINAPI SHParseDisplayName(LPCWSTR name, IBindCtx *bindctx, LPITEMIDLIST
 
     *pidlist = NULL;
 
-    if (!name) return E_OUTOFMEMORY;
+    if (!name) return E_INVALIDARG;
 
     hr = SHGetDesktopFolder(&desktop);
     if (hr != S_OK) return hr;
diff --git a/dlls/shell32/tests/shlfolder.c b/dlls/shell32/tests/shlfolder.c
index 9b19471..8777936 100644
--- a/dlls/shell32/tests/shlfolder.c
+++ b/dlls/shell32/tests/shlfolder.c
@@ -2001,7 +2001,8 @@ if (0)
 
     pidl1 = (LPITEMIDLIST)0xdeadbeef;
     hr = pSHParseDisplayName(NULL, NULL, &pidl1, 0, NULL);
-    ok(hr == E_OUTOFMEMORY, "failed %08x\n", hr);
+    ok(broken(hr == E_OUTOFMEMORY) /* < Vista */ ||
+       hr == E_INVALIDARG, "failed %08x\n", hr);
     ok(pidl1 == 0, "expected null ptr, got %p\n", pidl1);
 
     /* dummy name */
-- 
1.5.6.5


--=-i1xhZDylBZ2ZaAGO+Px0--




More information about the wine-patches mailing list