Module: wine Branch: master Commit: 594a19645e9ff54bcf3787c74028af725f329067 URL: http://source.winehq.org/git/wine.git/?a=commit;h=594a19645e9ff54bcf3787c740...
Author: Andrew Eikum aeikum@codeweavers.com Date: Fri Mar 19 10:57:13 2010 -0500
shlwapi: Only skip 'localhost' in file URLs in UrlCanonicalize.
---
dlls/shlwapi/tests/url.c | 1 + dlls/shlwapi/url.c | 1 + 2 files changed, 2 insertions(+), 0 deletions(-)
diff --git a/dlls/shlwapi/tests/url.c b/dlls/shlwapi/tests/url.c index f1bd648..f7c9455 100644 --- a/dlls/shlwapi/tests/url.c +++ b/dlls/shlwapi/tests/url.c @@ -160,6 +160,7 @@ static const TEST_URL_CANONICALIZE TEST_CANONICALIZE[] = { {"A", 0, S_OK, "A", FALSE}, {"/uri-res/N2R?urn:sha1:B3K", URL_DONT_ESCAPE_EXTRA_INFO | URL_WININET_COMPATIBILITY /*0x82000000*/, S_OK, "/uri-res/N2R?urn:sha1:B3K", FALSE} /*LimeWire online installer calls this*/, {"http:www.winehq.org/dir/../index.html", 0, S_OK, "http:www.winehq.org/index.html"}, + {"http://localhost/test.html", URL_FILE_USE_PATHURL, S_OK, "http://localhost/test.html%22%7D };
/* ################ */ diff --git a/dlls/shlwapi/url.c b/dlls/shlwapi/url.c index 1568714..958a842 100644 --- a/dlls/shlwapi/url.c +++ b/dlls/shlwapi/url.c @@ -359,6 +359,7 @@ HRESULT WINAPI UrlCanonicalizeW(LPCWSTR pszUrl, LPWSTR pszCanonicalized, if (*wk1 != '/') {state = 6; break;} *wk2++ = *wk1++; if((dwFlags & URL_FILE_USE_PATHURL) && nByteLen >= sizeof(wszLocalhost) + && !strncmpW(wszFile, pszUrl, sizeof(wszFile)/sizeof(WCHAR)) && !memcmp(wszLocalhost, wk1, sizeof(wszLocalhost))){ wk1 += sizeof(wszLocalhost)/sizeof(WCHAR); while(*wk1 == '\' && (dwFlags & URL_FILE_USE_PATHURL))