shell32[1/2]: RunFileDlg: allow custom icon

Alexandre Julliard julliard at winehq.org
Tue Jul 8 02:51:51 CDT 2008


Mikołaj Zalewski <mikolaj at zalewski.pl> writes:

> diff --git a/dlls/shell32/dialogs.c b/dlls/shell32/dialogs.c
> index 0e858b8..a30cf33 100644
> --- a/dlls/shell32/dialogs.c
> +++ b/dlls/shell32/dialogs.c
> @@ -139,9 +139,11 @@ static INT_PTR CALLBACK RunDlgProc (HWND hwnd, UINT message, WPARAM wParam, LPAR
>              if (prfdp->uFlags & RFF_CALCDIRECTORY)
>                  FIXME("RFF_CALCDIRECTORY not supported\n");
>  
> +            if (prfdp->hIcon == NULL)
> +                prfdp->hIcon = (WPARAM)LoadIconW(NULL, (LPCWSTR)IDI_WINLOGO);
>              SetClassLongPtrW (hwnd, GCLP_HICON, (LPARAM)prfdp->hIcon) ;
> -            SendMessageW (GetDlgItem (hwnd, IDC_RUNDLG_ICON), STM_SETICON,
> -                          (WPARAM)LoadIconW (NULL, (LPCWSTR)IDI_WINLOGO), 0);
> +            SendMessageW(GetDlgItem(hwnd, IDC_RUNDLG_ICON), STM_SETICON, (WPARAM)prfdp->hIcon, 0);
> +

The SetClassLongPtrW call is very wrong, you should probably fix that
too while you're at it.

-- 
Alexandre Julliard
julliard at winehq.org



More information about the wine-devel mailing list