[PATCH 2/2] shell32: Fix regression preventing explorer to open control panel applets

Fabian Maurer dark.shadow4 at web.de
Wed Apr 27 19:12:47 CDT 2022


I have to ask again, what's the state of this?
Did I miss something?

Regards,
Fabian Maurer

On Sonntag, 16. Januar 2022 19:11:16 CEST you wrote:
> Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=52394
> Signed-off-by: Fabian Maurer <dark.shadow4 at web.de>
> ---
>  dlls/shell32/shlfolder.c | 6 ++++--
>  1 file changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/dlls/shell32/shlfolder.c b/dlls/shell32/shlfolder.c
> index 8e3b561cfd1..28d067075ca 100644
> --- a/dlls/shell32/shlfolder.c
> +++ b/dlls/shell32/shlfolder.c
> @@ -381,6 +381,7 @@ HRESULT SHELL32_GetItemAttributes (IShellFolder2 *psf,
> LPCITEMIDLIST pidl, LPDWO {
>      DWORD dwAttributes;
>      BOOL has_guid;
> +    PIDLDATA* data;
>      static const DWORD dwSupportedAttr=
>                            SFGAO_CANCOPY |           /*0x00000001 */
>                            SFGAO_CANMOVE |           /*0x00000002 */
> @@ -406,6 +407,7 @@ HRESULT SHELL32_GetItemAttributes (IShellFolder2 *psf,
> LPCITEMIDLIST pidl, LPDWO }
>
>      has_guid = _ILGetGUIDPointer(pidl) != NULL;
> +    data = _ILGetDataPointer (pidl);
>
>      dwAttributes = *pdwAttributes;
>
> @@ -414,10 +416,10 @@ HRESULT SHELL32_GetItemAttributes (IShellFolder2 *psf,
> LPCITEMIDLIST pidl, LPDWO
> SFGAO_DROPTARGET|SFGAO_HASPROPSHEET|SFGAO_CANLINK;
>      } else if (has_guid && _ILIsPidlSimple(pidl) &&
> HCR_GetFolderAttributes(pidl, &dwAttributes)) { *pdwAttributes =
> dwAttributes;
> -    } else if (_ILGetDataPointer (pidl)) {
> +    } else if (data) {
>  	DWORD file_attr = _ILGetFileAttributes (pidl, NULL, 0);
>
> -        if (!file_attr) {
> +        if (!file_attr && data->type != PT_CPLAPPLET) {
>  	    WCHAR path[MAX_PATH];
>  	    STRRET strret;
>
> --
> 2.34.1







More information about the wine-devel mailing list