mirror of
https://github.com/reactos/reactos.git
synced 2025-08-05 00:05:42 +00:00
correct error handling in SHELL32_ParseNextElement()
svn path=/trunk/; revision=9132
This commit is contained in:
parent
23a76b4fa1
commit
b1a7c433b7
1 changed files with 6 additions and 4 deletions
|
@ -118,14 +118,16 @@ HRESULT SHELL32_ParseNextElement (IShellFolder2 * psf, HWND hwndOwner, LPBC pbc,
|
||||||
/* get the shellfolder for the child pidl and let it analyse further */
|
/* get the shellfolder for the child pidl and let it analyse further */
|
||||||
hr = IShellFolder_BindToObject (psf, *pidlInOut, pbc, &IID_IShellFolder, (LPVOID *) & psfChild);
|
hr = IShellFolder_BindToObject (psf, *pidlInOut, pbc, &IID_IShellFolder, (LPVOID *) & psfChild);
|
||||||
|
|
||||||
if (SUCCEEDED (hr)) {
|
if (SUCCEEDED(hr)) {
|
||||||
hr = IShellFolder_ParseDisplayName (psfChild, hwndOwner, pbc, szNext, pEaten, &pidlOut, pdwAttributes);
|
hr = IShellFolder_ParseDisplayName (psfChild, hwndOwner, pbc, szNext, pEaten, &pidlOut, pdwAttributes);
|
||||||
IShellFolder_Release (psfChild);
|
IShellFolder_Release (psfChild);
|
||||||
|
|
||||||
pidlTemp = ILCombine (*pidlInOut, pidlOut);
|
if (SUCCEEDED(hr)) {
|
||||||
|
pidlTemp = ILCombine (*pidlInOut, pidlOut);
|
||||||
|
|
||||||
if (!pidlTemp)
|
if (!pidlTemp)
|
||||||
hr = E_OUTOFMEMORY;
|
hr = E_OUTOFMEMORY;
|
||||||
|
}
|
||||||
|
|
||||||
if (pidlOut)
|
if (pidlOut)
|
||||||
ILFree (pidlOut);
|
ILFree (pidlOut);
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue