Author: gadamopoulos
Date: Sun Aug 14 16:15:02 2016
New Revision: 72221
URL:
http://svn.reactos.org/svn/reactos?rev=72221&view=rev
Log:
[SHELL32]
- Fix a bug in CStartMenu_Constructor and add some comments to explain what this part
does.
Modified:
trunk/reactos/dll/win32/shell32/shellmenu/CStartMenu.cpp
Modified: trunk/reactos/dll/win32/shell32/shellmenu/CStartMenu.cpp
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/shell32/shellmen…
==============================================================================
--- trunk/reactos/dll/win32/shell32/shellmenu/CStartMenu.cpp [iso-8859-1] (original)
+++ trunk/reactos/dll/win32/shell32/shellmenu/CStartMenu.cpp [iso-8859-1] Sun Aug 14
16:15:02 2016
@@ -472,6 +472,7 @@
if (FAILED_UNEXPECTEDLY(hr))
return hr;
+ /* psf is a merged folder, so now we want to get the pidl of the programs item from
the merged folder */
{
hr = SHGetSpecialFolderLocation(NULL, CSIDL_PROGRAMS, &pidlProgramsAbsolute);
if (FAILED(hr))
@@ -491,13 +492,14 @@
if (FAILED(hr))
return hr;
- hr = psfParent->GetDisplayNameOf(pcidlPrograms, SHGDN_NORMAL, &str);
+ hr = psfParent->GetDisplayNameOf(pcidlPrograms, SHGDN_FORPARSING |
SHGDN_INFOLDER, &str);
if (FAILED(hr))
return hr;
StrRetToBuf(&str, pcidlPrograms, szDisplayName, _countof(szDisplayName));
ILFree(pidlProgramsAbsolute);
+ /* We got the display name from the fs folder and we parse it with the merged
folder here */
hr = psf->ParseDisplayName(NULL, NULL, szDisplayName, NULL, &pidlPrograms,
NULL);
if (FAILED(hr))
return hr;