https://git.reactos.org/?p=reactos.git;a=commitdiff;h=c2b476bd77673d0285f3a…
commit c2b476bd77673d0285f3aa3f3c9a935f7e530a01
Author: Thomas Faber <thomas.faber(a)reactos.org>
AuthorDate: Fri Sep 20 12:19:34 2019 +0200
Commit: Thomas Faber <thomas.faber(a)reactos.org>
CommitDate: Sun Sep 22 16:19:11 2019 +0200
[SHELL] IPersistFolder::Initialize takes a PCIDLIST_ABSOLUTE. CORE-16385
---
dll/shellext/ntobjshex/foldercommon.h | 2 +-
dll/shellext/ntobjshex/ntobjfolder.cpp | 4 ++--
dll/shellext/ntobjshex/ntobjfolder.h | 4 ++--
dll/shellext/ntobjshex/regfolder.cpp | 4 ++--
dll/shellext/ntobjshex/regfolder.h | 4 ++--
dll/shellext/zipfldr/CZipFolder.hpp | 2 +-
dll/win32/browseui/aclistisf.cpp | 2 +-
dll/win32/browseui/aclistisf.h | 2 +-
dll/win32/browseui/shellfind/CFindFolder.cpp | 2 +-
dll/win32/browseui/shellfind/CFindFolder.h | 2 +-
dll/win32/shell32/folders/CAdminToolsFolder.cpp | 2 +-
dll/win32/shell32/folders/CAdminToolsFolder.h | 2 +-
dll/win32/shell32/folders/CControlPanelFolder.cpp | 2 +-
dll/win32/shell32/folders/CControlPanelFolder.h | 2 +-
dll/win32/shell32/folders/CDesktopFolder.h | 2 +-
dll/win32/shell32/folders/CDrivesFolder.h | 2 +-
dll/win32/shell32/folders/CFSFolder.h | 2 +-
dll/win32/shell32/folders/CFontsFolder.cpp | 2 +-
dll/win32/shell32/folders/CFontsFolder.h | 2 +-
dll/win32/shell32/folders/CMyDocsFolder.cpp | 2 +-
dll/win32/shell32/folders/CMyDocsFolder.h | 2 +-
dll/win32/shell32/folders/CNetFolder.cpp | 2 +-
dll/win32/shell32/folders/CNetFolder.h | 2 +-
dll/win32/shell32/folders/CPrinterFolder.cpp | 2 +-
dll/win32/shell32/folders/CPrinterFolder.h | 2 +-
dll/win32/shell32/folders/CRecycleBin.cpp | 2 +-
dll/win32/shell32/folders/CRecycleBin.h | 2 +-
dll/win32/shell32/shellmenu/CMergedFolder.cpp | 2 +-
dll/win32/shell32/shellmenu/CMergedFolder.h | 2 +-
sdk/include/psdk/shobjidl.idl | 2 +-
30 files changed, 34 insertions(+), 34 deletions(-)
diff --git a/dll/shellext/ntobjshex/foldercommon.h
b/dll/shellext/ntobjshex/foldercommon.h
index 2780d637550..ae04fd40d85 100644
--- a/dll/shellext/ntobjshex/foldercommon.h
+++ b/dll/shellext/ntobjshex/foldercommon.h
@@ -631,7 +631,7 @@ public:
}
// IPersistFolder
- virtual HRESULT STDMETHODCALLTYPE Initialize(LPCITEMIDLIST pidl)
+ virtual HRESULT STDMETHODCALLTYPE Initialize(PCIDLIST_ABSOLUTE pidl)
{
m_shellPidl = ILClone(pidl);
diff --git a/dll/shellext/ntobjshex/ntobjfolder.cpp
b/dll/shellext/ntobjshex/ntobjfolder.cpp
index 24571cad1ed..38a4cabadd7 100644
--- a/dll/shellext/ntobjshex/ntobjfolder.cpp
+++ b/dll/shellext/ntobjshex/ntobjfolder.cpp
@@ -198,7 +198,7 @@ HRESULT STDMETHODCALLTYPE CNtObjectFolder::InternalBindToObject(
}
// IPersistFolder
-HRESULT STDMETHODCALLTYPE CNtObjectFolder::Initialize(LPCITEMIDLIST pidl)
+HRESULT STDMETHODCALLTYPE CNtObjectFolder::Initialize(PCIDLIST_ABSOLUTE pidl)
{
m_shellPidl = ILClone(pidl);
@@ -208,7 +208,7 @@ HRESULT STDMETHODCALLTYPE CNtObjectFolder::Initialize(LPCITEMIDLIST
pidl)
}
// Internal
-HRESULT STDMETHODCALLTYPE CNtObjectFolder::Initialize(LPCITEMIDLIST pidl, PCWSTR ntPath)
+HRESULT STDMETHODCALLTYPE CNtObjectFolder::Initialize(PCIDLIST_ABSOLUTE pidl, PCWSTR
ntPath)
{
m_shellPidl = ILClone(pidl);
diff --git a/dll/shellext/ntobjshex/ntobjfolder.h b/dll/shellext/ntobjshex/ntobjfolder.h
index 5192e29856e..556ce571528 100644
--- a/dll/shellext/ntobjshex/ntobjfolder.h
+++ b/dll/shellext/ntobjshex/ntobjfolder.h
@@ -97,10 +97,10 @@ public:
SHCOLUMNID *pscid);
// IPersistFolder
- virtual HRESULT STDMETHODCALLTYPE Initialize(LPCITEMIDLIST pidl);
+ virtual HRESULT STDMETHODCALLTYPE Initialize(PCIDLIST_ABSOLUTE pidl);
// Internal
- HRESULT STDMETHODCALLTYPE Initialize(LPCITEMIDLIST pidl, PCWSTR ntPath);
+ HRESULT STDMETHODCALLTYPE Initialize(PCIDLIST_ABSOLUTE pidl, PCWSTR ntPath);
protected:
virtual HRESULT STDMETHODCALLTYPE CompareIDs(LPARAM lParam, const NtPidlEntry *
first, const NtPidlEntry * second);
diff --git a/dll/shellext/ntobjshex/regfolder.cpp b/dll/shellext/ntobjshex/regfolder.cpp
index a314ad70a65..c75c79cb158 100644
--- a/dll/shellext/ntobjshex/regfolder.cpp
+++ b/dll/shellext/ntobjshex/regfolder.cpp
@@ -136,7 +136,7 @@ HRESULT STDMETHODCALLTYPE CRegistryFolder::InternalBindToObject(
return ShellObjectCreatorInit<CRegistryFolder>(fullPidl, path, m_hRoot,
IID_PPV_ARG(IShellFolder, ppsfChild));
}
-HRESULT STDMETHODCALLTYPE CRegistryFolder::Initialize(LPCITEMIDLIST pidl)
+HRESULT STDMETHODCALLTYPE CRegistryFolder::Initialize(PCIDLIST_ABSOLUTE pidl)
{
m_shellPidl = ILClone(pidl);
m_hRoot = NULL;
@@ -145,7 +145,7 @@ HRESULT STDMETHODCALLTYPE CRegistryFolder::Initialize(LPCITEMIDLIST
pidl)
return S_OK;
}
-HRESULT STDMETHODCALLTYPE CRegistryFolder::Initialize(LPCITEMIDLIST pidl, PCWSTR ntPath,
HKEY hRoot)
+HRESULT STDMETHODCALLTYPE CRegistryFolder::Initialize(PCIDLIST_ABSOLUTE pidl, PCWSTR
ntPath, HKEY hRoot)
{
m_shellPidl = ILClone(pidl);
m_hRoot = hRoot;
diff --git a/dll/shellext/ntobjshex/regfolder.h b/dll/shellext/ntobjshex/regfolder.h
index 1de5db47863..08f687f8ce7 100644
--- a/dll/shellext/ntobjshex/regfolder.h
+++ b/dll/shellext/ntobjshex/regfolder.h
@@ -94,10 +94,10 @@ public:
SHCOLUMNID *pscid);
// IPersistFolder
- virtual HRESULT STDMETHODCALLTYPE Initialize(LPCITEMIDLIST pidl);
+ virtual HRESULT STDMETHODCALLTYPE Initialize(PCIDLIST_ABSOLUTE pidl);
// Internal
- virtual HRESULT STDMETHODCALLTYPE Initialize(LPCITEMIDLIST pidl, PCWSTR ntPath, HKEY
hRoot);
+ virtual HRESULT STDMETHODCALLTYPE Initialize(PCIDLIST_ABSOLUTE pidl, PCWSTR ntPath,
HKEY hRoot);
protected:
virtual HRESULT STDMETHODCALLTYPE CompareIDs(LPARAM lParam, const RegPidlEntry *
first, const RegPidlEntry * second);
diff --git a/dll/shellext/zipfldr/CZipFolder.hpp b/dll/shellext/zipfldr/CZipFolder.hpp
index e2407452eaf..e56ea3aedcd 100644
--- a/dll/shellext/zipfldr/CZipFolder.hpp
+++ b/dll/shellext/zipfldr/CZipFolder.hpp
@@ -605,7 +605,7 @@ public:
}
// *** IPersistFolder methods ***
- STDMETHODIMP Initialize(LPCITEMIDLIST pidl)
+ STDMETHODIMP Initialize(PCIDLIST_ABSOLUTE pidl)
{
WCHAR tmpPath[MAX_PATH];
diff --git a/dll/win32/browseui/aclistisf.cpp b/dll/win32/browseui/aclistisf.cpp
index b1bc8b7dfa1..72045b3a14e 100644
--- a/dll/win32/browseui/aclistisf.cpp
+++ b/dll/win32/browseui/aclistisf.cpp
@@ -95,7 +95,7 @@ HRESULT STDMETHODCALLTYPE CACListISF::GetClassID(CLSID *pClassID)
}
// *** IPersistFolder methods ***
-HRESULT STDMETHODCALLTYPE CACListISF::Initialize(LPCITEMIDLIST pidl)
+HRESULT STDMETHODCALLTYPE CACListISF::Initialize(PCIDLIST_ABSOLUTE pidl)
{
TRACE("(%p, %p)\n", this, pidl);
return S_OK;
diff --git a/dll/win32/browseui/aclistisf.h b/dll/win32/browseui/aclistisf.h
index e50c309c6d0..ddb530946da 100644
--- a/dll/win32/browseui/aclistisf.h
+++ b/dll/win32/browseui/aclistisf.h
@@ -55,7 +55,7 @@ public:
virtual HRESULT STDMETHODCALLTYPE GetClassID(CLSID *pClassID);
// *** IPersistFolder methods ***
- virtual HRESULT STDMETHODCALLTYPE Initialize(LPCITEMIDLIST pidl);
+ virtual HRESULT STDMETHODCALLTYPE Initialize(PCIDLIST_ABSOLUTE pidl);
public:
diff --git a/dll/win32/browseui/shellfind/CFindFolder.cpp
b/dll/win32/browseui/shellfind/CFindFolder.cpp
index 749fe927f4f..0a2aec890ac 100644
--- a/dll/win32/browseui/shellfind/CFindFolder.cpp
+++ b/dll/win32/browseui/shellfind/CFindFolder.cpp
@@ -681,7 +681,7 @@ STDMETHODIMP CFindFolder::GetCurFolder(PIDLIST_ABSOLUTE *pidl)
}
// *** IPersistFolder methods ***
-STDMETHODIMP CFindFolder::Initialize(LPCITEMIDLIST pidl)
+STDMETHODIMP CFindFolder::Initialize(PCIDLIST_ABSOLUTE pidl)
{
m_pidl = ILClone(pidl);
if (!m_pidl)
diff --git a/dll/win32/browseui/shellfind/CFindFolder.h
b/dll/win32/browseui/shellfind/CFindFolder.h
index 43be568b38e..a19651bde49 100644
--- a/dll/win32/browseui/shellfind/CFindFolder.h
+++ b/dll/win32/browseui/shellfind/CFindFolder.h
@@ -77,7 +77,7 @@ private:
// *** IPersistFolder methods ***
- STDMETHODIMP Initialize(LPCITEMIDLIST pidl);
+ STDMETHODIMP Initialize(PCIDLIST_ABSOLUTE pidl);
// *** IPersist methods ***
diff --git a/dll/win32/shell32/folders/CAdminToolsFolder.cpp
b/dll/win32/shell32/folders/CAdminToolsFolder.cpp
index f461a8b57e8..25ecc244e1f 100644
--- a/dll/win32/shell32/folders/CAdminToolsFolder.cpp
+++ b/dll/win32/shell32/folders/CAdminToolsFolder.cpp
@@ -168,7 +168,7 @@ HRESULT WINAPI CAdminToolsFolder::GetClassID(CLSID *lpClassId)
return S_OK;
}
-HRESULT WINAPI CAdminToolsFolder::Initialize(LPCITEMIDLIST pidl)
+HRESULT WINAPI CAdminToolsFolder::Initialize(PCIDLIST_ABSOLUTE pidl)
{
m_pidlInner = ILClone(pidl);
if (!m_pidlInner)
diff --git a/dll/win32/shell32/folders/CAdminToolsFolder.h
b/dll/win32/shell32/folders/CAdminToolsFolder.h
index 25478f0a883..e87a87f96d0 100644
--- a/dll/win32/shell32/folders/CAdminToolsFolder.h
+++ b/dll/win32/shell32/folders/CAdminToolsFolder.h
@@ -60,7 +60,7 @@ class CAdminToolsFolder :
virtual HRESULT WINAPI GetClassID(CLSID *lpClassId);
// IPersistFolder
- virtual HRESULT WINAPI Initialize(LPCITEMIDLIST pidl);
+ virtual HRESULT WINAPI Initialize(PCIDLIST_ABSOLUTE pidl);
// IPersistFolder2
virtual HRESULT WINAPI GetCurFolder(PIDLIST_ABSOLUTE * pidl);
diff --git a/dll/win32/shell32/folders/CControlPanelFolder.cpp
b/dll/win32/shell32/folders/CControlPanelFolder.cpp
index 2782ad85a8d..53bd9cb6313 100644
--- a/dll/win32/shell32/folders/CControlPanelFolder.cpp
+++ b/dll/win32/shell32/folders/CControlPanelFolder.cpp
@@ -614,7 +614,7 @@ HRESULT WINAPI CControlPanelFolder::GetClassID(CLSID *lpClassId)
*
* NOTES: it makes no sense to change the pidl
*/
-HRESULT WINAPI CControlPanelFolder::Initialize(LPCITEMIDLIST pidl)
+HRESULT WINAPI CControlPanelFolder::Initialize(PCIDLIST_ABSOLUTE pidl)
{
if (pidlRoot)
SHFree((LPVOID)pidlRoot);
diff --git a/dll/win32/shell32/folders/CControlPanelFolder.h
b/dll/win32/shell32/folders/CControlPanelFolder.h
index e3ced8697e5..1fa7969aff4 100644
--- a/dll/win32/shell32/folders/CControlPanelFolder.h
+++ b/dll/win32/shell32/folders/CControlPanelFolder.h
@@ -65,7 +65,7 @@ class CControlPanelFolder :
virtual HRESULT WINAPI GetClassID(CLSID *lpClassId);
// IPersistFolder
- virtual HRESULT WINAPI Initialize(LPCITEMIDLIST pidl);
+ virtual HRESULT WINAPI Initialize(PCIDLIST_ABSOLUTE pidl);
// IPersistFolder2
virtual HRESULT WINAPI GetCurFolder(PIDLIST_ABSOLUTE * pidl);
diff --git a/dll/win32/shell32/folders/CDesktopFolder.h
b/dll/win32/shell32/folders/CDesktopFolder.h
index 90de48f619b..3ac844323aa 100644
--- a/dll/win32/shell32/folders/CDesktopFolder.h
+++ b/dll/win32/shell32/folders/CDesktopFolder.h
@@ -71,7 +71,7 @@ class CDesktopFolder :
virtual HRESULT WINAPI GetClassID(CLSID *lpClassId);
// *** IPersistFolder methods ***
- virtual HRESULT WINAPI Initialize(LPCITEMIDLIST pidl);
+ virtual HRESULT WINAPI Initialize(PCIDLIST_ABSOLUTE pidl);
// *** IPersistFolder2 methods ***
virtual HRESULT WINAPI GetCurFolder(PIDLIST_ABSOLUTE * pidl);
diff --git a/dll/win32/shell32/folders/CDrivesFolder.h
b/dll/win32/shell32/folders/CDrivesFolder.h
index 8d37ac216fe..21a04ea05af 100644
--- a/dll/win32/shell32/folders/CDrivesFolder.h
+++ b/dll/win32/shell32/folders/CDrivesFolder.h
@@ -65,7 +65,7 @@ class CDrivesFolder :
virtual HRESULT WINAPI GetClassID(CLSID *lpClassId);
// IPersistFolder
- virtual HRESULT WINAPI Initialize(LPCITEMIDLIST pidl);
+ virtual HRESULT WINAPI Initialize(PCIDLIST_ABSOLUTE pidl);
// IPersistFolder2
virtual HRESULT WINAPI GetCurFolder(PIDLIST_ABSOLUTE * pidl);
diff --git a/dll/win32/shell32/folders/CFSFolder.h
b/dll/win32/shell32/folders/CFSFolder.h
index 11276c7ec6a..39b5c09ca2b 100644
--- a/dll/win32/shell32/folders/CFSFolder.h
+++ b/dll/win32/shell32/folders/CFSFolder.h
@@ -73,7 +73,7 @@ class CFSFolder :
virtual HRESULT WINAPI GetClassID(CLSID *lpClassId);
// IPersistFolder
- virtual HRESULT WINAPI Initialize(LPCITEMIDLIST pidl);
+ virtual HRESULT WINAPI Initialize(PCIDLIST_ABSOLUTE pidl);
// IPersistFolder2
virtual HRESULT WINAPI GetCurFolder(PIDLIST_ABSOLUTE * pidl);
diff --git a/dll/win32/shell32/folders/CFontsFolder.cpp
b/dll/win32/shell32/folders/CFontsFolder.cpp
index 355354cec20..b094c4dc805 100644
--- a/dll/win32/shell32/folders/CFontsFolder.cpp
+++ b/dll/win32/shell32/folders/CFontsFolder.cpp
@@ -169,7 +169,7 @@ HRESULT WINAPI CFontsFolder::GetClassID(CLSID *lpClassId)
return S_OK;
}
-HRESULT WINAPI CFontsFolder::Initialize(LPCITEMIDLIST pidl)
+HRESULT WINAPI CFontsFolder::Initialize(PCIDLIST_ABSOLUTE pidl)
{
m_pidlInner = ILClone(pidl);
if (!m_pidlInner)
diff --git a/dll/win32/shell32/folders/CFontsFolder.h
b/dll/win32/shell32/folders/CFontsFolder.h
index 0229485514d..02345a3cf1d 100644
--- a/dll/win32/shell32/folders/CFontsFolder.h
+++ b/dll/win32/shell32/folders/CFontsFolder.h
@@ -60,7 +60,7 @@ class CFontsFolder :
virtual HRESULT WINAPI GetClassID(CLSID *lpClassId);
// IPersistFolder
- virtual HRESULT WINAPI Initialize(LPCITEMIDLIST pidl);
+ virtual HRESULT WINAPI Initialize(PCIDLIST_ABSOLUTE pidl);
// IPersistFolder2
virtual HRESULT WINAPI GetCurFolder(PIDLIST_ABSOLUTE *pidl);
diff --git a/dll/win32/shell32/folders/CMyDocsFolder.cpp
b/dll/win32/shell32/folders/CMyDocsFolder.cpp
index 8c28b6711eb..ae7e4673b90 100644
--- a/dll/win32/shell32/folders/CMyDocsFolder.cpp
+++ b/dll/win32/shell32/folders/CMyDocsFolder.cpp
@@ -168,7 +168,7 @@ HRESULT WINAPI CMyDocsFolder::GetClassID(CLSID *lpClassId)
return S_OK;
}
-HRESULT WINAPI CMyDocsFolder::Initialize(LPCITEMIDLIST pidl)
+HRESULT WINAPI CMyDocsFolder::Initialize(PCIDLIST_ABSOLUTE pidl)
{
m_pidlInner = ILClone(pidl);
if (!m_pidlInner)
diff --git a/dll/win32/shell32/folders/CMyDocsFolder.h
b/dll/win32/shell32/folders/CMyDocsFolder.h
index 7c0e521ccd9..9f89621fae1 100644
--- a/dll/win32/shell32/folders/CMyDocsFolder.h
+++ b/dll/win32/shell32/folders/CMyDocsFolder.h
@@ -60,7 +60,7 @@ class CMyDocsFolder :
virtual HRESULT WINAPI GetClassID(CLSID *lpClassId);
// IPersistFolder
- virtual HRESULT WINAPI Initialize(LPCITEMIDLIST pidl);
+ virtual HRESULT WINAPI Initialize(PCIDLIST_ABSOLUTE pidl);
// IPersistFolder2
virtual HRESULT WINAPI GetCurFolder(PIDLIST_ABSOLUTE * pidl);
diff --git a/dll/win32/shell32/folders/CNetFolder.cpp
b/dll/win32/shell32/folders/CNetFolder.cpp
index a2384b1117b..93d91ab6dbb 100644
--- a/dll/win32/shell32/folders/CNetFolder.cpp
+++ b/dll/win32/shell32/folders/CNetFolder.cpp
@@ -571,7 +571,7 @@ HRESULT WINAPI CNetFolder::GetClassID(CLSID *lpClassId)
*
* NOTES: it makes no sense to change the pidl
*/
-HRESULT WINAPI CNetFolder::Initialize(LPCITEMIDLIST pidl)
+HRESULT WINAPI CNetFolder::Initialize(PCIDLIST_ABSOLUTE pidl)
{
if (pidlRoot)
SHFree((LPVOID)pidlRoot);
diff --git a/dll/win32/shell32/folders/CNetFolder.h
b/dll/win32/shell32/folders/CNetFolder.h
index 7a540db92d3..33d807d8fe5 100644
--- a/dll/win32/shell32/folders/CNetFolder.h
+++ b/dll/win32/shell32/folders/CNetFolder.h
@@ -62,7 +62,7 @@ class CNetFolder :
virtual HRESULT WINAPI GetClassID(CLSID *lpClassId);
// IPersistFolder
- virtual HRESULT WINAPI Initialize(LPCITEMIDLIST pidl);
+ virtual HRESULT WINAPI Initialize(PCIDLIST_ABSOLUTE pidl);
// IPersistFolder2
virtual HRESULT WINAPI GetCurFolder(PIDLIST_ABSOLUTE * pidl);
diff --git a/dll/win32/shell32/folders/CPrinterFolder.cpp
b/dll/win32/shell32/folders/CPrinterFolder.cpp
index 69565afb6a7..83290cce1aa 100644
--- a/dll/win32/shell32/folders/CPrinterFolder.cpp
+++ b/dll/win32/shell32/folders/CPrinterFolder.cpp
@@ -479,7 +479,7 @@ HRESULT WINAPI CPrinterFolder::GetClassID(CLSID *lpClassId)
/************************************************************************
* CPrinterFolder::Initialize
*/
-HRESULT WINAPI CPrinterFolder::Initialize(LPCITEMIDLIST pidl)
+HRESULT WINAPI CPrinterFolder::Initialize(PCIDLIST_ABSOLUTE pidl)
{
if (pidlRoot)
SHFree((LPVOID)pidlRoot);
diff --git a/dll/win32/shell32/folders/CPrinterFolder.h
b/dll/win32/shell32/folders/CPrinterFolder.h
index 5ba34082afb..18daf653f53 100644
--- a/dll/win32/shell32/folders/CPrinterFolder.h
+++ b/dll/win32/shell32/folders/CPrinterFolder.h
@@ -65,7 +65,7 @@ class CPrinterFolder :
virtual HRESULT WINAPI GetClassID(CLSID *lpClassId);
// IPersistFolder
- virtual HRESULT WINAPI Initialize(LPCITEMIDLIST pidl);
+ virtual HRESULT WINAPI Initialize(PCIDLIST_ABSOLUTE pidl);
// IPersistFolder2
virtual HRESULT WINAPI GetCurFolder(PIDLIST_ABSOLUTE * pidl);
diff --git a/dll/win32/shell32/folders/CRecycleBin.cpp
b/dll/win32/shell32/folders/CRecycleBin.cpp
index 5a6b72bab7f..23e7e201f12 100644
--- a/dll/win32/shell32/folders/CRecycleBin.cpp
+++ b/dll/win32/shell32/folders/CRecycleBin.cpp
@@ -432,7 +432,7 @@ HRESULT WINAPI CRecycleBin::GetClassID(CLSID *pClassID)
return S_OK;
}
-HRESULT WINAPI CRecycleBin::Initialize(LPCITEMIDLIST pidl)
+HRESULT WINAPI CRecycleBin::Initialize(PCIDLIST_ABSOLUTE pidl)
{
TRACE("(%p, %p)\n", this, pidl);
diff --git a/dll/win32/shell32/folders/CRecycleBin.h
b/dll/win32/shell32/folders/CRecycleBin.h
index de62270dfdf..80945c42376 100644
--- a/dll/win32/shell32/folders/CRecycleBin.h
+++ b/dll/win32/shell32/folders/CRecycleBin.h
@@ -46,7 +46,7 @@ class CRecycleBin :
// IPersistFolder
virtual HRESULT WINAPI GetClassID(CLSID *pClassID);
- virtual HRESULT WINAPI Initialize(LPCITEMIDLIST pidl);
+ virtual HRESULT WINAPI Initialize(PCIDLIST_ABSOLUTE pidl);
// IPersistFolder2
virtual HRESULT WINAPI GetCurFolder(PIDLIST_ABSOLUTE * pidl);
diff --git a/dll/win32/shell32/shellmenu/CMergedFolder.cpp
b/dll/win32/shell32/shellmenu/CMergedFolder.cpp
index 04a2fd4a49b..17337d0e09c 100644
--- a/dll/win32/shell32/shellmenu/CMergedFolder.cpp
+++ b/dll/win32/shell32/shellmenu/CMergedFolder.cpp
@@ -697,7 +697,7 @@ HRESULT STDMETHODCALLTYPE CMergedFolder::GetClassID(CLSID *lpClassId)
}
// IPersistFolder
-HRESULT STDMETHODCALLTYPE CMergedFolder::Initialize(LPCITEMIDLIST pidl)
+HRESULT STDMETHODCALLTYPE CMergedFolder::Initialize(PCIDLIST_ABSOLUTE pidl)
{
m_shellPidl = ILClone(pidl);
return S_OK;
diff --git a/dll/win32/shell32/shellmenu/CMergedFolder.h
b/dll/win32/shell32/shellmenu/CMergedFolder.h
index c4c10acb440..4bc9ee20278 100644
--- a/dll/win32/shell32/shellmenu/CMergedFolder.h
+++ b/dll/win32/shell32/shellmenu/CMergedFolder.h
@@ -191,7 +191,7 @@ public:
virtual HRESULT STDMETHODCALLTYPE GetClassID(CLSID *lpClassId);
// IPersistFolder
- virtual HRESULT STDMETHODCALLTYPE Initialize(LPCITEMIDLIST pidl);
+ virtual HRESULT STDMETHODCALLTYPE Initialize(PCIDLIST_ABSOLUTE pidl);
// IPersistFolder2
virtual HRESULT STDMETHODCALLTYPE GetCurFolder(PIDLIST_ABSOLUTE * pidl);
diff --git a/sdk/include/psdk/shobjidl.idl b/sdk/include/psdk/shobjidl.idl
index 7c2aab3d51e..f8fb81adcd4 100644
--- a/sdk/include/psdk/shobjidl.idl
+++ b/sdk/include/psdk/shobjidl.idl
@@ -53,7 +53,7 @@ interface IPersistFolder : IPersist
{
typedef IPersistFolder *LPPERSISTFOLDER;
- HRESULT Initialize( [in] LPCITEMIDLIST pidl );
+ HRESULT Initialize( [in] PCIDLIST_ABSOLUTE pidl );
}