Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/mono-addins.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'Mono.Addins/Mono.Addins.Database/AddinScanner.cs')
-rw-r--r--Mono.Addins/Mono.Addins.Database/AddinScanner.cs15
1 files changed, 15 insertions, 0 deletions
diff --git a/Mono.Addins/Mono.Addins.Database/AddinScanner.cs b/Mono.Addins/Mono.Addins.Database/AddinScanner.cs
index dcc5f9e..97b3e6f 100644
--- a/Mono.Addins/Mono.Addins.Database/AddinScanner.cs
+++ b/Mono.Addins/Mono.Addins.Database/AddinScanner.cs
@@ -81,6 +81,21 @@ namespace Mono.Addins.Database
Assembly OnResolveAddinAssembly (object s, ResolveEventArgs args)
{
+ string[] paths = Environment.GetEnvironmentVariable("MONO_ADDINS_RESOLVER_PATH")?.Split(Path.PathSeparator);
+ if (paths != null)
+ {
+ foreach (string path in paths)
+ {
+ var assemblyName = new AssemblyName(args.Name).Name;
+ var assemblyFileName = Path.Combine(path, assemblyName + ".dll");
+
+ if (File.Exists(assemblyFileName))
+ {
+ return Util.LoadAssemblyForReflection (assemblyFileName);
+ }
+ }
+ }
+
string file = assemblyLocator != null ? assemblyLocator.GetAssemblyLocation (args.Name) : null;
if (file != null)
return Util.LoadAssemblyForReflection (file);