urlmon: Use unescaped Urls for FTP actions (try 2)

Jacek Caban jacek at codeweavers.com
Fri Mar 18 13:31:56 CDT 2011


Hi André,

On 3/17/11 8:58 PM, André Hentschel wrote:
> ...don't leak path...
> ---
>   dlls/urlmon/ftp.c |   16 ++++++++++++----
>   1 files changed, 12 insertions(+), 4 deletions(-)
>
> diff --git a/dlls/urlmon/ftp.c b/dlls/urlmon/ftp.c
> index c9d43b8..a27d84c 100644
> --- a/dlls/urlmon/ftp.c
> +++ b/dlls/urlmon/ftp.c
> @@ -59,22 +59,30 @@ static HRESULT FtpProtocol_open_request(Protocol *prot, IUri *uri, DWORD request
>           HINTERNET internet_session, IInternetBindInfo *bind_info)
>   {
>       FtpProtocol *This = impl_from_Protocol(prot);
> -    BSTR url;
> +    DWORD path_size = INTERNET_MAX_URL_LENGTH;
> +    BSTR url, path;
>       HRESULT hres;
>
>       hres = IUri_GetAbsoluteUri(uri,&url);
>       if(FAILED(hres))
>           return hres;
> +    path = heap_alloc(path_size);
> +    hres = UrlUnescapeW((LPWSTR)url, path,&path_size, 0);

It looks like using GetDisplayUri is what you need.

Jacek



More information about the wine-devel mailing list