Huw Davies : shell: Fix incorrect usage of the return value of StrRetToStrNW.

Alexandre Julliard julliard at wine.codeweavers.com
Fri Jan 20 13:20:30 CST 2006


Module: wine
Branch: refs/heads/master
Commit: 51fd75070798484ca37b9e623dc9108cefaa7c94
URL:    http://source.winehq.org/git/?p=wine.git;a=commit;h=51fd75070798484ca37b9e623dc9108cefaa7c94

Author: Huw Davies <huw at codeweavers.com>
Date:   Fri Jan 20 20:17:07 2006 +0100

shell: Fix incorrect usage of the return value of StrRetToStrNW.

---

 dlls/shell32/brsfolder.c |    7 +------
 dlls/shell32/pidl.c      |    6 ++++--
 dlls/shell32/shlfolder.c |    3 ++-
 3 files changed, 7 insertions(+), 9 deletions(-)

diff --git a/dlls/shell32/brsfolder.c b/dlls/shell32/brsfolder.c
index f4c0876..aba8e23 100644
--- a/dlls/shell32/brsfolder.c
+++ b/dlls/shell32/brsfolder.c
@@ -227,12 +227,7 @@ static BOOL GetName(LPSHELLFOLDER lpsf, 
 
 	TRACE("%p %p %lx %p\n", lpsf, lpi, dwFlags, lpFriendlyName);
 	if (SUCCEEDED(IShellFolder_GetDisplayNameOf(lpsf, lpi, dwFlags, &str)))
-	{
-	  if (FAILED(StrRetToStrNW(lpFriendlyName, MAX_PATH, &str, lpi)))
-	  {
-	      bSuccess = FALSE;
-	  }
-	}
+          bSuccess = StrRetToStrNW(lpFriendlyName, MAX_PATH, &str, lpi);
 	else
 	  bSuccess = FALSE;
 
diff --git a/dlls/shell32/pidl.c b/dlls/shell32/pidl.c
index fb85949..c4e54e0 100644
--- a/dlls/shell32/pidl.c
+++ b/dlls/shell32/pidl.c
@@ -133,7 +133,8 @@ BOOL WINAPI ILGetDisplayNameExW(LPSHELLF
             ret = IShellFolder_GetDisplayNameOf(lsf, pidl, flag, &strret);
             if (SUCCEEDED(ret))
             {
-                ret = StrRetToStrNW(path, MAX_PATH, &strret, pidl);
+                if(!StrRetToStrNW(path, MAX_PATH, &strret, pidl))
+                    ret = E_FAIL;
             }
         }
         else
@@ -144,7 +145,8 @@ BOOL WINAPI ILGetDisplayNameExW(LPSHELLF
                 ret = IShellFolder_GetDisplayNameOf(psfParent, pidllast, flag, &strret);
                 if (SUCCEEDED(ret))
                 {
-                    ret = StrRetToStrNW(path, MAX_PATH, &strret, pidllast);
+                    if(!StrRetToStrNW(path, MAX_PATH, &strret, pidllast))
+                        ret = E_FAIL;
                 }
                 IShellFolder_Release(psfParent);
             }
diff --git a/dlls/shell32/shlfolder.c b/dlls/shell32/shlfolder.c
index 09e46f1..29fd408 100644
--- a/dlls/shell32/shlfolder.c
+++ b/dlls/shell32/shlfolder.c
@@ -350,7 +350,8 @@ HRESULT SHELL32_GetDisplayNameOfChild (I
 
 	    hr = IShellFolder_GetDisplayNameOf (psfChild, pidlNext, dwFlags, &strTemp);
 	    if (SUCCEEDED (hr)) {
-		hr = StrRetToStrNW (szOut, dwOutLen, &strTemp, pidlNext);
+		if(!StrRetToStrNW (szOut, dwOutLen, &strTemp, pidlNext))
+                    hr = E_FAIL;
 	    }
 	    IShellFolder_Release (psfChild);
 	}




More information about the wine-cvs mailing list