[PATCH v3 1/2] urlmon: Use unescaped Urls for FTP actions

Alistair Leslie-Hughes leslie_alistair at hotmail.com
Mon Mar 25 16:28:22 CDT 2019


From: André Hentschel <nerv at dawncrow.de>

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=26445
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair at hotmail.com>
---
 dlls/urlmon/ftp.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/dlls/urlmon/ftp.c b/dlls/urlmon/ftp.c
index aef4a6c..b1ae637 100644
--- a/dlls/urlmon/ftp.c
+++ b/dlls/urlmon/ftp.c
@@ -66,12 +66,16 @@ static HRESULT FtpProtocol_open_request(Protocol *prot, IUri *uri, DWORD request
         HINTERNET internet_session, IInternetBindInfo *bind_info)
 {
     FtpProtocol *This = impl_from_Protocol(prot);
+    DWORD path_size = 0;
     BSTR url;
     HRESULT hres;
 
     hres = IUri_GetAbsoluteUri(uri, &url);
     if(FAILED(hres))
         return hres;
+    hres = UrlUnescapeW(url, NULL, &path_size, URL_UNESCAPE_INPLACE);
+    if(FAILED(hres))
+        return hres;
 
     This->base.request = InternetOpenUrlW(internet_session, url, NULL, 0,
             request_flags|INTERNET_FLAG_EXISTING_CONNECT|INTERNET_FLAG_PASSIVE,
-- 
1.9.1



More information about the wine-devel mailing list