mirror of
https://github.com/reactos/reactos.git
synced 2024-10-22 05:46:19 +00:00
- Improve error checking
- Remove extensions which should be hidden (*.lnk) - CID 82 svn path=/trunk/; revision=37067
This commit is contained in:
parent
1e6b6718f3
commit
59b469b1fb
|
@ -424,8 +424,8 @@ static HRESULT WINAPI ISF_AdminTools_fnGetDisplayNameOf (IShellFolder2 * iface,
|
||||||
if ((GET_SHGDN_RELATION (dwFlags) == SHGDN_NORMAL) &&
|
if ((GET_SHGDN_RELATION (dwFlags) == SHGDN_NORMAL) &&
|
||||||
(GET_SHGDN_FOR (dwFlags) & SHGDN_FORPARSING))
|
(GET_SHGDN_FOR (dwFlags) & SHGDN_FORPARSING))
|
||||||
wcscpy(pszPath, This->szTarget);
|
wcscpy(pszPath, This->szTarget);
|
||||||
else
|
else if (!HCR_GetClassNameW(&CLSID_AdminFolderShortcut, pszPath, MAX_PATH))
|
||||||
HCR_GetClassNameW(&CLSID_AdminFolderShortcut, pszPath, MAX_PATH);
|
hr = E_FAIL;
|
||||||
}
|
}
|
||||||
else if (_ILIsPidlSimple(pidl))
|
else if (_ILIsPidlSimple(pidl))
|
||||||
{
|
{
|
||||||
|
@ -436,12 +436,23 @@ static HRESULT WINAPI ISF_AdminTools_fnGetDisplayNameOf (IShellFolder2 * iface,
|
||||||
wcscpy(pszPath, This->szTarget);
|
wcscpy(pszPath, This->szTarget);
|
||||||
pOffset = PathAddBackslashW(pszPath);
|
pOffset = PathAddBackslashW(pszPath);
|
||||||
if (pOffset)
|
if (pOffset)
|
||||||
_ILSimpleGetTextW(pidl, pOffset, MAX_PATH + 1 - (pOffset - pszPath));
|
{
|
||||||
|
if (!_ILSimpleGetTextW(pidl, pOffset, MAX_PATH + 1 - (pOffset - pszPath)))
|
||||||
|
hr = E_FAIL;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
hr = E_FAIL;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
_ILSimpleGetTextW(pidl, pszPath, MAX_PATH + 1);
|
if (_ILSimpleGetTextW(pidl, pszPath, MAX_PATH + 1))
|
||||||
}
|
{
|
||||||
|
if (SHELL_FS_HideExtension(pszPath))
|
||||||
|
PathRemoveExtensionW(pszPath);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
hr = E_FAIL;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else if (_ILIsSpecialFolder(pidl))
|
else if (_ILIsSpecialFolder(pidl))
|
||||||
{
|
{
|
||||||
|
@ -449,10 +460,10 @@ static HRESULT WINAPI ISF_AdminTools_fnGetDisplayNameOf (IShellFolder2 * iface,
|
||||||
|
|
||||||
if (bSimplePidl)
|
if (bSimplePidl)
|
||||||
{
|
{
|
||||||
_ILSimpleGetTextW(pidl, pszPath, MAX_PATH);
|
if (!_ILSimpleGetTextW(pidl, pszPath, MAX_PATH))
|
||||||
}
|
hr = E_FAIL;
|
||||||
|
}
|
||||||
if ((dwFlags & SHGDN_FORPARSING) && !bSimplePidl)
|
else if ((dwFlags & SHGDN_FORPARSING) && !bSimplePidl)
|
||||||
{
|
{
|
||||||
int len = 0;
|
int len = 0;
|
||||||
|
|
||||||
|
@ -473,11 +484,11 @@ static HRESULT WINAPI ISF_AdminTools_fnGetDisplayNameOf (IShellFolder2 * iface,
|
||||||
{
|
{
|
||||||
strRet->uType = STRRET_WSTR;
|
strRet->uType = STRRET_WSTR;
|
||||||
strRet->u.pOleStr = pszPath;
|
strRet->u.pOleStr = pszPath;
|
||||||
|
TRACE ("-- (%p)->(%s,0x%08x)\n", This, debugstr_w(strRet->u.pOleStr), hr);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
CoTaskMemFree(pszPath);
|
CoTaskMemFree(pszPath);
|
||||||
|
|
||||||
TRACE ("-- (%p)->(%s,0x%08x)\n", This, debugstr_w(strRet->u.pOleStr), hr);
|
|
||||||
return hr;
|
return hr;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue