* Take MSVC workaround from trunk.

[RSHELL]
* Fix GCC build.
* Add a couple error checks.

svn path=/branches/shell-experiments/; revision=62307
This commit is contained in:
David Quintana 2014-02-23 16:44:54 +00:00
parent d0f3e72c8e
commit 04a3726c09
4 changed files with 21 additions and 9 deletions

View file

@ -16,6 +16,7 @@ add_subdirectory(kbswitch)
add_subdirectory(logoff)
add_subdirectory(magnify)
add_subdirectory(mmc)
add_subdirectory(mplay32)
add_subdirectory(msconfig)
add_subdirectory(mscutils)
add_subdirectory(mstsc)

View file

@ -1118,7 +1118,9 @@ HRESULT CMenuSFToolbar::FillToolbar()
tbb.fsStyle = 0;
CComPtr<IShellItem> psi;
SHCreateShellItem(NULL, m_shellFolder, item, &psi);
hr = SHCreateShellItem(NULL, m_shellFolder, item, &psi);
if (FAILED(hr))
return hr;
hr = psi->GetDisplayName(SIGDN_NORMALDISPLAY, &MenuString);
if (FAILED(hr))
@ -1150,7 +1152,7 @@ HRESULT CMenuSFToolbar::FillToolbar()
if (i == 0)
{
TBBUTTON tbb = { 0 };
PWSTR MenuString = L"(Empty)";
PCWSTR MenuString = L"(Empty)";
tbb.fsState = 0/*TBSTATE_DISABLED*/;
tbb.fsStyle = 0;
@ -1301,7 +1303,9 @@ HRESULT CMenuSFToolbar::HasSubMenu(UINT uItem)
{
HRESULT hr;
CComPtr<IShellItem> psi;
SHCreateShellItem(NULL, m_shellFolder, GetPidlFromId(uItem), &psi);
hr = SHCreateShellItem(NULL, m_shellFolder, GetPidlFromId(uItem), &psi);
if (FAILED(hr))
return S_FALSE;
SFGAOF attrs;
hr = psi->GetAttributes(SFGAO_FOLDER, &attrs);
@ -1312,14 +1316,14 @@ HRESULT CMenuSFToolbar::HasSubMenu(UINT uItem)
}
CMenuBand::CMenuBand() :
m_site(NULL),
m_psmc(NULL),
m_staticToolbar(NULL),
m_SFToolbar(NULL),
m_site(NULL),
m_psmc(NULL),
m_subMenuChild(NULL),
m_useBigIcons(FALSE),
m_hotBar(NULL),
m_hotItem(-1),
m_subMenuChild(NULL)
m_hotItem(-1)
{
m_focusManager = CMenuFocusManager::AcquireManager();
}

View file

@ -266,7 +266,7 @@ public:
};
extern "C"
HRESULT
HRESULT WINAPI
CStartMenu_Constructor(REFIID riid, void **ppv)
{
IShellMenu* pShellMenu;

View file

@ -121,7 +121,14 @@ set(CMAKE_ASM_CREATE_STATIC_LIBRARY ${CMAKE_C_CREATE_STATIC_LIBRARY})
if(PCH)
macro(add_pch _target _pch _sources)
set(_gch ${CMAKE_CURRENT_BINARY_DIR}/${_target}.pch)
# Workaround for the MSVC toolchain (MSBUILD) /MP bug
set(_temp_gch ${CMAKE_CURRENT_BINARY_DIR}/${_target}.pch)
if(MSVC_IDE)
file(TO_NATIVE_PATH ${_temp_gch} _gch)
else()
set(_gch ${_temp_gch})
endif()
if(IS_CPP)
set(_pch_language CXX)