From be1f95527ac288872c45a8b076399590c7db494a Mon Sep 17 00:00:00 2001 From: Thomas Faber Date: Sun, 22 Sep 2019 16:48:04 +0200 Subject: [PATCH] [SHELL] IPersistIDList/IShellLink use P(C)IDLIST_ABSOLUTE. CORE-16385 --- dll/win32/shell32/CShellItem.cpp | 4 ++-- dll/win32/shell32/CShellItem.h | 4 ++-- dll/win32/shell32/CShellLink.cpp | 4 ++-- dll/win32/shell32/CShellLink.h | 8 ++++---- sdk/include/psdk/shobjidl.idl | 12 ++++++------ 5 files changed, 16 insertions(+), 16 deletions(-) diff --git a/dll/win32/shell32/CShellItem.cpp b/dll/win32/shell32/CShellItem.cpp index d403adcf023..f60da93a3f5 100644 --- a/dll/win32/shell32/CShellItem.cpp +++ b/dll/win32/shell32/CShellItem.cpp @@ -233,7 +233,7 @@ HRESULT WINAPI CShellItem::GetClassID(CLSID *pClassID) return S_OK; } -HRESULT WINAPI CShellItem::SetIDList(LPCITEMIDLIST pidlx) +HRESULT WINAPI CShellItem::SetIDList(PCIDLIST_ABSOLUTE pidlx) { LPITEMIDLIST new_pidl; @@ -250,7 +250,7 @@ HRESULT WINAPI CShellItem::SetIDList(LPCITEMIDLIST pidlx) return E_OUTOFMEMORY; } -HRESULT WINAPI CShellItem::GetIDList(LPITEMIDLIST *ppidl) +HRESULT WINAPI CShellItem::GetIDList(PIDLIST_ABSOLUTE *ppidl) { TRACE("(%p,%p)\n", this, ppidl); diff --git a/dll/win32/shell32/CShellItem.h b/dll/win32/shell32/CShellItem.h index 57c318523dd..555501d8cda 100644 --- a/dll/win32/shell32/CShellItem.h +++ b/dll/win32/shell32/CShellItem.h @@ -47,8 +47,8 @@ public: // IPersistIDList virtual HRESULT WINAPI GetClassID(CLSID *pClassID); - virtual HRESULT WINAPI SetIDList(LPCITEMIDLIST pidl); - virtual HRESULT WINAPI GetIDList(LPITEMIDLIST *ppidl); + virtual HRESULT WINAPI SetIDList(PCIDLIST_ABSOLUTE pidl); + virtual HRESULT WINAPI GetIDList(PIDLIST_ABSOLUTE *ppidl); DECLARE_NO_REGISTRY() DECLARE_NOT_AGGREGATABLE(CShellItem) diff --git a/dll/win32/shell32/CShellLink.cpp b/dll/win32/shell32/CShellLink.cpp index 695b83d8bb5..3d7051d9699 100644 --- a/dll/win32/shell32/CShellLink.cpp +++ b/dll/win32/shell32/CShellLink.cpp @@ -1097,7 +1097,7 @@ HRESULT STDMETHODCALLTYPE CShellLink::GetPath(LPSTR pszFile, INT cchMaxPath, WIN return hr; } -HRESULT STDMETHODCALLTYPE CShellLink::GetIDList(LPITEMIDLIST *ppidl) +HRESULT STDMETHODCALLTYPE CShellLink::GetIDList(PIDLIST_ABSOLUTE *ppidl) { TRACE("(%p)->(ppidl=%p)\n", this, ppidl); @@ -1111,7 +1111,7 @@ HRESULT STDMETHODCALLTYPE CShellLink::GetIDList(LPITEMIDLIST *ppidl) return S_OK; } -HRESULT STDMETHODCALLTYPE CShellLink::SetIDList(LPCITEMIDLIST pidl) +HRESULT STDMETHODCALLTYPE CShellLink::SetIDList(PCIDLIST_ABSOLUTE pidl) { TRACE("(%p)->(pidl=%p)\n", this, pidl); return SetTargetFromPIDLOrPath(pidl, NULL); diff --git a/dll/win32/shell32/CShellLink.h b/dll/win32/shell32/CShellLink.h index 958eb9d6eff..dac5369fedf 100644 --- a/dll/win32/shell32/CShellLink.h +++ b/dll/win32/shell32/CShellLink.h @@ -129,8 +129,8 @@ public: // IShellLinkA virtual HRESULT STDMETHODCALLTYPE GetPath(LPSTR pszFile, INT cchMaxPath, WIN32_FIND_DATAA *pfd, DWORD fFlags); - virtual HRESULT STDMETHODCALLTYPE GetIDList(LPITEMIDLIST *ppidl); - virtual HRESULT STDMETHODCALLTYPE SetIDList(LPCITEMIDLIST pidl); + virtual HRESULT STDMETHODCALLTYPE GetIDList(PIDLIST_ABSOLUTE *ppidl); + virtual HRESULT STDMETHODCALLTYPE SetIDList(PCIDLIST_ABSOLUTE pidl); virtual HRESULT STDMETHODCALLTYPE GetDescription(LPSTR pszName, INT cchMaxName); virtual HRESULT STDMETHODCALLTYPE SetDescription(LPCSTR pszName); virtual HRESULT STDMETHODCALLTYPE GetWorkingDirectory(LPSTR pszDir, INT cchMaxPath); @@ -149,8 +149,8 @@ public: // IShellLinkW virtual HRESULT STDMETHODCALLTYPE GetPath(LPWSTR pszFile, INT cchMaxPath, WIN32_FIND_DATAW *pfd, DWORD fFlags); - // virtual HRESULT STDMETHODCALLTYPE GetIDList(LPITEMIDLIST *ppidl); - // virtual HRESULT STDMETHODCALLTYPE SetIDList(LPCITEMIDLIST pidl); + // virtual HRESULT STDMETHODCALLTYPE GetIDList(PIDLIST_ABSOLUTE *ppidl); + // virtual HRESULT STDMETHODCALLTYPE SetIDList(PCIDLIST_ABSOLUTE pidl); virtual HRESULT STDMETHODCALLTYPE GetDescription(LPWSTR pszName, INT cchMaxName); virtual HRESULT STDMETHODCALLTYPE SetDescription(LPCWSTR pszName); virtual HRESULT STDMETHODCALLTYPE GetWorkingDirectory(LPWSTR pszDir, INT cchMaxPath); diff --git a/sdk/include/psdk/shobjidl.idl b/sdk/include/psdk/shobjidl.idl index 85c9be1c1e9..c540f232e00 100644 --- a/sdk/include/psdk/shobjidl.idl +++ b/sdk/include/psdk/shobjidl.idl @@ -83,8 +83,8 @@ interface IPersistFolder2 : IPersistFolder ] interface IPersistIDList : IPersist { - HRESULT SetIDList( [in] LPCITEMIDLIST pidl ); - HRESULT GetIDList( [out] LPITEMIDLIST *ppidl ); + HRESULT SetIDList( [in] PCIDLIST_ABSOLUTE pidl ); + HRESULT GetIDList( [out] PIDLIST_ABSOLUTE *ppidl ); } @@ -1139,9 +1139,9 @@ interface IShellLinkA : IUnknown [in, out, unique] WIN32_FIND_DATAA *pfd, [in] DWORD fFlags); - HRESULT GetIDList( [out] LPITEMIDLIST * ppidl ); + HRESULT GetIDList( [out] PIDLIST_ABSOLUTE * ppidl ); - HRESULT SetIDList( [in] LPCITEMIDLIST pidl ); + HRESULT SetIDList( [in] PCIDLIST_ABSOLUTE pidl ); HRESULT GetDescription( [out, size_is(cch)] LPSTR pszName, @@ -1206,9 +1206,9 @@ interface IShellLinkW : IUnknown [in, out] WIN32_FIND_DATAW *pfd, [in] DWORD fFlags); - HRESULT GetIDList( [out] LPITEMIDLIST * ppidl ); + HRESULT GetIDList( [out] PIDLIST_ABSOLUTE * ppidl ); - HRESULT SetIDList( [in] LPCITEMIDLIST pidl ); + HRESULT SetIDList( [in] PCIDLIST_ABSOLUTE pidl ); HRESULT GetDescription( [out, size_is(cch)] LPWSTR pszName,