On Sat, 16 Feb 2008, Alexandre Julliard wrote:
The test should probably be removed completely since there's already a
default for it in the switch() that follows.
I was thinking of this, but wanted to go for the smaller patch initially,
but your wish is my command ;-).
Updated patch below. Nearly everything here is whitespace changes; the
second hunk only removes if (type = 0 type = 2) { and }.
Gerald
ChangeLog:
Adjust a format specifier and remove a redundant range check in
ILGetDisplayNameExW().
Index: pidl.c
===
RCS file: /home/wine/wine/dlls/shell32/pidl.c,v
retrieving revision 1.159
diff -u -3 -p -r1.159 pidl.c
--- pidl.c 16 Feb 2008 15:58:53 - 1.159
+++ pidl.c 17 Feb 2008 18:44:54 -
@@ -97,7 +97,7 @@ BOOL WINAPI ILGetDisplayNameExW(LPSHELLF
STRRET strret;
DWORD flag;
-TRACE(%p %p %p %d\n, psf, pidl, path, type);
+TRACE(%p %p %p %x\n, psf, pidl, path, type);
if (!pidl || !path)
return FALSE;
@@ -109,46 +109,44 @@ BOOL WINAPI ILGetDisplayNameExW(LPSHELLF
return FALSE;
}
-if (type = 0 type = 2)
+switch (type)
{
-switch (type)
+case ILGDN_FORPARSING:
+flag = SHGDN_FORPARSING | SHGDN_FORADDRESSBAR;
+break;
+case ILGDN_NORMAL:
+flag = SHGDN_NORMAL;
+break;
+case ILGDN_INFOLDER:
+flag = SHGDN_INFOLDER;
+break;
+default:
+FIXME(Unknown type parameter = %x\n, type);
+flag = SHGDN_FORPARSING | SHGDN_FORADDRESSBAR;
+break;
+}
+
+if (!*(const WORD*)pidl || type == ILGDN_FORPARSING)
+{
+ret = IShellFolder_GetDisplayNameOf(lsf, pidl, flag, strret);
+if (SUCCEEDED(ret))
{
-case ILGDN_FORPARSING:
-flag = SHGDN_FORPARSING | SHGDN_FORADDRESSBAR;
-break;
-case ILGDN_NORMAL:
-flag = SHGDN_NORMAL;
-break;
-case ILGDN_INFOLDER:
-flag = SHGDN_INFOLDER;
-break;
-default:
-FIXME(Unknown type parameter = %x\n, type);
-flag = SHGDN_FORPARSING | SHGDN_FORADDRESSBAR;
-break;
+if(!StrRetToStrNW(path, MAX_PATH, strret, pidl))
+ret = E_FAIL;
}
-if (!*(const WORD*)pidl || type == ILGDN_FORPARSING)
+}
+else
+{
+ret = SHBindToParent(pidl, IID_IShellFolder, (LPVOID*)psfParent,
pidllast);
+if (SUCCEEDED(ret))
{
-ret = IShellFolder_GetDisplayNameOf(lsf, pidl, flag, strret);
+ret = IShellFolder_GetDisplayNameOf(psfParent, pidllast, flag,
strret);
if (SUCCEEDED(ret))
{
-if(!StrRetToStrNW(path, MAX_PATH, strret, pidl))
+if(!StrRetToStrNW(path, MAX_PATH, strret, pidllast))
ret = E_FAIL;
}
-}
-else
-{
-ret = SHBindToParent(pidl, IID_IShellFolder, (LPVOID*)psfParent,
pidllast);
-if (SUCCEEDED(ret))
-{
-ret = IShellFolder_GetDisplayNameOf(psfParent, pidllast, flag,
strret);
-if (SUCCEEDED(ret))
-{
-if(!StrRetToStrNW(path, MAX_PATH, strret, pidllast))
-ret = E_FAIL;
-}
-IShellFolder_Release(psfParent);
-}
+IShellFolder_Release(psfParent);
}
}