{L"Relevance", SHCOLSTATE_TYPE_STR, LVCFMT_LEFT, 0}
};
+CFindFolder::CFindFolder() :
+ m_hStopEvent(NULL)
+{
+}
+
static LPITEMIDLIST _ILCreate(LPCWSTR lpszPath, LPCITEMIDLIST lpcFindDataPidl)
{
int pathLen = (wcslen(lpszPath) + 1) * sizeof(WCHAR);
return hr;
}
- LPITEMIDLIST lpFSPidl;
+ CComHeapPtr<ITEMIDLIST> lpFSPidl;
DWORD pchEaten;
hr = pShellFolder->ParseDisplayName(NULL, NULL, path, &pchEaten, &lpFSPidl, NULL);
if (FAILED_UNEXPECTEDLY(hr))
}
LPITEMIDLIST lpLastFSPidl = ILFindLastID(lpFSPidl);
- LPITEMIDLIST lpSearchPidl = _ILCreate(path, lpLastFSPidl);
- ILFree(lpFSPidl);
+ CComHeapPtr<ITEMIDLIST> lpSearchPidl(_ILCreate(path, lpLastFSPidl));
LocalFree(path);
if (!lpSearchPidl)
{
UINT uItemIndex;
hr = m_shellFolderView->AddObject(lpSearchPidl, &uItemIndex);
- ILFree(lpSearchPidl);
return hr;
}
WCHAR path[MAX_PATH];
wcscpy(path, (LPCWSTR) apidl[0]->mkid.abID);
PathRemoveFileSpecW(path);
- LPITEMIDLIST rootPidl = ILCreateFromPathW(path);
+ CComHeapPtr<ITEMIDLIST> rootPidl(ILCreateFromPathW(path));
if (!rootPidl)
return E_OUTOFMEMORY;
PCITEMID_CHILD aFSPidl[1];
for (UINT i = 0; i < cidl; i++)
{
- LPITEMIDLIST pidl;
+ CComHeapPtr<ITEMIDLIST> pidl;
DWORD attrs = 0;
hr = SHILCreateFromPathW((LPCWSTR) apidl[i]->mkid.abID, &pidl, &attrs);
if (SUCCEEDED(hr))
if (FAILED_UNEXPECTEDLY(hr))
return hr;
- LPITEMIDLIST findFolderPidl;
+ CComHeapPtr<ITEMIDLIST> findFolderPidl;
hr = SHParseDisplayName(szShellGuid, NULL, &findFolderPidl, 0, NULL);
if (FAILED_UNEXPECTEDLY(hr))
return hr;