}
case BFFM_SELCHANGED:
{
+ if (!this_)
+ break;
+
WCHAR szPath[MAX_PATH];
LPCITEMIDLIST pidl = reinterpret_cast<LPCITEMIDLIST>(lParam);
HRESULT CMoveToMenu::DoRealMove(LPCMINVOKECOMMANDINFO lpici, LPCITEMIDLIST pidl)
{
- CComHeapPtr<CIDA> pCIDA;
- HRESULT hr = _GetCidlFromDataObject(m_pDataObject, &pCIDA);
- if (FAILED_UNEXPECTEDLY(hr))
- return hr;
+ CDataObjectHIDA pCIDA(m_pDataObject);
+ if (FAILED_UNEXPECTEDLY(pCIDA.hr()))
+ return pCIDA.hr();
PCUIDLIST_ABSOLUTE pidlParent = HIDA_GetPIDLFolder(pCIDA);
if (!pidlParent)
op.pFrom = strFiles;
op.pTo = szPath;
op.fFlags = FOF_ALLOWUNDO;
- return ((SHFileOperation(&op) == 0) ? S_OK : E_FAIL);
+ int res = SHFileOperationW(&op);
+ if (res)
+ {
+ ERR("SHFileOperationW failed with 0x%x\n", res);
+ return E_FAIL;
+ }
+ return S_OK;
}
CStringW CMoveToMenu::DoGetFileTitle()
{
CStringW ret = L"(file)";
- CComHeapPtr<CIDA> pCIDA;
- HRESULT hr = _GetCidlFromDataObject(m_pDataObject, &pCIDA);
- if (FAILED_UNEXPECTEDLY(hr))
+ CDataObjectHIDA pCIDA(m_pDataObject);
+ if (FAILED_UNEXPECTEDLY(pCIDA.hr()))
return ret;
PCUIDLIST_ABSOLUTE pidlParent = HIDA_GetPIDLFolder(pCIDA);