[PATCH] mscoree: Don't use a shared mono install with no drive letter.
Vincent Povirk
vincent at codeweavers.com
Mon Apr 8 11:03:56 CDT 2019
Signed-off-by: Vincent Povirk <vincent at codeweavers.com>
---
dlls/mscoree/metahost.c | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/dlls/mscoree/metahost.c b/dlls/mscoree/metahost.c
index 50d43b30ead..1b2abd26e40 100644
--- a/dlls/mscoree/metahost.c
+++ b/dlls/mscoree/metahost.c
@@ -712,6 +712,7 @@ static BOOL get_mono_path_registry(LPWSTR path)
static BOOL get_mono_path_unix(const char *unix_dir, LPWSTR path)
{
+ static const WCHAR unix_prefix[] = {'\\','\\','?','\\','u','n','i','x','\\'};
static WCHAR * (CDECL *p_wine_get_dos_file_name)(const char*);
LPWSTR dos_dir;
WCHAR mono_dll_path[MAX_PATH];
@@ -728,6 +729,13 @@ static BOOL get_mono_path_unix(const char *unix_dir, LPWSTR path)
if (!dos_dir)
return FALSE;
+ if (memcmp(dos_dir, unix_prefix, sizeof(unix_prefix)) == 0)
+ {
+ /* No drive letter for this directory */
+ heap_free(dos_dir);
+ return FALSE;
+ }
+
ret = find_mono_dll(dos_dir, mono_dll_path);
if (ret)
strcpyW(path, dos_dir);
--
2.17.1
More information about the wine-devel
mailing list