Explorar o código

Add a warning message if duplicate patchers are found

denikson %!s(int64=6) %!d(string=hai) anos
pai
achega
30c2fa7164
Modificáronse 1 ficheiros con 8 adicións e 1 borrados
  1. 8 1
      BepInEx/Bootstrap/Preloader.cs

+ 8 - 1
BepInEx/Bootstrap/Preloader.cs

@@ -87,7 +87,14 @@ namespace BepInEx.Bootstrap
 							var assembly = Assembly.LoadFrom(assemblyPath);
 
 							foreach (KeyValuePair<string, KeyValuePair<AssemblyPatcherDelegate, IEnumerable<string>>> kv in GetPatcherMethods(assembly))
-								sortedPatchers.Add(kv.Key, kv.Value);
+							    try
+							    {
+							        sortedPatchers.Add(kv.Key, kv.Value);
+							    }
+							    catch (ArgumentException)
+							    {
+                                    Logger.Log(LogLevel.Warning, $"Found duplicate of patcher {kv.Key}!");
+							    }
 						}
 						catch (BadImageFormatException) { } //unmanaged DLL
 						catch (ReflectionTypeLoadException) { } //invalid references