[PATCH 0/1] MR9725: dwrite: Do not modify file path when \??\unix path is used.
It's possible to get system font files paths in unix-path format, if there is no drive configured that allows access to corresponding trees. When this happens registry font list starts using unix paths, and those can't be modified the same way regular win32 paths could be. This fixes a regression caused by 2a2cc34db71. Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=58811 Signed-off-by: Nikolay Sivov <nsivov(a)codeweavers.com> -- https://gitlab.winehq.org/wine/wine/-/merge_requests/9725
From: Nikolay Sivov <nsivov(a)codeweavers.com> It's possible to get system font files paths in unix-path format, if there is no drive configured that allows access to corresponding trees. When this happens registry font list starts using unix paths, and those can't be modified the same way regular win32 paths could be. This fixes a regression caused by 2a2cc34db71. Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=58811 Signed-off-by: Nikolay Sivov <nsivov(a)codeweavers.com> --- dlls/dwrite/font.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/dlls/dwrite/font.c b/dlls/dwrite/font.c index b0f72010e31..af195e92ca0 100644 --- a/dlls/dwrite/font.c +++ b/dlls/dwrite/font.c @@ -5775,7 +5775,8 @@ HRESULT get_local_refkey(const WCHAR *path, const FILETIME *writetime, void **ke refkey->writetime = *writetime; memcpy(refkey->name, path, len * sizeof(WCHAR)); - wcsupr(refkey->name); + if (wcsncmp(refkey->name, L"\\??\\unix", 8)) + wcsupr(refkey->name); *key = refkey; -- GitLab https://gitlab.winehq.org/wine/wine/-/merge_requests/9725
participants (2)
-
Nikolay Sivov -
Nikolay Sivov (@nsivov)