Daniel Lehman : kernelbase: Handle UNC path in UrlApplySchemeW.
Alexandre Julliard
julliard at winehq.org
Tue Nov 23 16:03:31 CST 2021
Module: wine
Branch: master
Commit: 2a5682d98b2d06642333eef288f4d82ecda4ca9a
URL: https://source.winehq.org/git/wine.git/?a=commit;h=2a5682d98b2d06642333eef288f4d82ecda4ca9a
Author: Daniel Lehman <dlehman at esri.com>
Date: Tue Nov 23 07:42:22 2021 -0800
kernelbase: Handle UNC path in UrlApplySchemeW.
Fixes loading XML from a UNC path.
Signed-off-by: Daniel Lehman <dlehman at esri.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>
---
dlls/kernelbase/path.c | 2 +-
dlls/shlwapi/tests/url.c | 5 +++++
2 files changed, 6 insertions(+), 1 deletion(-)
diff --git a/dlls/kernelbase/path.c b/dlls/kernelbase/path.c
index a9105341fad..b4b31410a3a 100644
--- a/dlls/kernelbase/path.c
+++ b/dlls/kernelbase/path.c
@@ -4020,7 +4020,7 @@ HRESULT WINAPI UrlApplySchemeW(const WCHAR *url, WCHAR *out, DWORD *length, DWOR
if (flags & URL_APPLY_GUESSFILE)
{
- if (*length > 1 && ':' == url[1])
+ if ((*length > 1 && ':' == url[1]) || PathIsUNCW(url))
{
res1 = *length;
hr = url_create_from_path(url, out, &res1);
diff --git a/dlls/shlwapi/tests/url.c b/dlls/shlwapi/tests/url.c
index 9e04c6d7b6f..0cc14dc65bf 100644
--- a/dlls/shlwapi/tests/url.c
+++ b/dlls/shlwapi/tests/url.c
@@ -97,6 +97,11 @@ static const TEST_URL_APPLY TEST_APPLY[] = {
{"u:\\windows", URL_APPLY_DEFAULT, S_OK, 17, "http://u:\\windows"},
{"file:///c:/windows", URL_APPLY_GUESSFILE , S_FALSE, TEST_APPLY_MAX_LENGTH, untouchedA},
{"aa:\\windows", URL_APPLY_GUESSFILE , S_FALSE, TEST_APPLY_MAX_LENGTH, untouchedA},
+ {"\\\\server\\share", URL_APPLY_DEFAULT, S_OK, 21, "http://\\\\server\\share"},
+ {"\\\\server\\share", URL_APPLY_GUESSFILE, S_OK, 19, "file://server/share"},
+ {"\\\\server\\share", URL_APPLY_GUESSSCHEME, S_FALSE, TEST_APPLY_MAX_LENGTH, untouchedA},
+ {"file://server/share", URL_APPLY_GUESSFILE, S_FALSE, TEST_APPLY_MAX_LENGTH, untouchedA},
+ {"file://server/share", URL_APPLY_GUESSSCHEME, S_FALSE, TEST_APPLY_MAX_LENGTH, untouchedA},
};
/* ################ */
More information about the wine-cvs
mailing list