Explorar o código

Fix assembly resolving on locales in paths with non-ASCII chars

ghorsington %!s(int64=4) %!d(string=hai) anos
pai
achega
d81aca7795
Modificáronse 1 ficheiros con 3 adicións e 1 borrados
  1. 3 1
      BepInEx.Preloader/Entrypoint.cs

+ 3 - 1
BepInEx.Preloader/Entrypoint.cs

@@ -21,8 +21,10 @@ namespace BepInEx.Preloader
 		{
 			var assemblyName = new AssemblyName(args.Name);
 
+			// Use parse assembly name on managed side because native GetName() can fail on some locales
+			// if the game path has "exotic" characters
 			var foundAssembly = AppDomain.CurrentDomain.GetAssemblies()
-										 .FirstOrDefault(x => x.GetName().Name == assemblyName.Name);
+										 .FirstOrDefault(x => new AssemblyName(x.FullName).Name == assemblyName.Name);
 
 			if (foundAssembly != null)
 				return foundAssembly;