From: Ratchanan Srirattanamet peathot+winehq@hotmail.com
Commit 8cd69810596e ("msi: Get system directory just once.") remove call to GetSystemDirectoryW() in load_fusion_dlls() but forgot to add corresponding wcscpy() call. This causes loading mscoree.dll to fail, breaking .NET-assembly-related functionalities. Add it back. --- dlls/msi/assembly.c | 1 + 1 file changed, 1 insertion(+)
diff --git a/dlls/msi/assembly.c b/dlls/msi/assembly.c index 6613bf3bf96..2452bb0b8d1 100644 --- a/dlls/msi/assembly.c +++ b/dlls/msi/assembly.c @@ -35,6 +35,7 @@ static void load_fusion_dlls( MSIPACKAGE *package ) HRESULT (WINAPI *pLoadLibraryShim)( const WCHAR *, const WCHAR *, void *, HMODULE * ); WCHAR path[MAX_PATH];
+ wcscpy(path, sysdir); lstrcpyW( path + sysdir_len, L"\mscoree.dll" ); if (!package->hmscoree && !(package->hmscoree = LoadLibraryW( path ))) return; if (!(pLoadLibraryShim = (void *)GetProcAddress( package->hmscoree, "LoadLibraryShim" )))