Fixed synchronization in assembly resolver

Close #145
This commit is contained in:
Westin Miller
2017-10-10 03:58:21 -07:00
parent bc1a612a20
commit f285d67c87

View File

@@ -42,23 +42,16 @@ namespace Torch.Utils
{
string assemblyName = new AssemblyName(args.Name).Name;
lock (_assemblies)
{
if (_assemblies.TryGetValue(assemblyName, out Assembly asm))
return asm;
}
lock (AppDomain.CurrentDomain)
{
foreach (Assembly asm in AppDomain.CurrentDomain.GetAssemblies())
if (asm.GetName().Name.Equals(assemblyName))
{
lock (this)
{
lock (_assemblies)
_assemblies.Add(assemblyName, asm);
return asm;
}
}
}
lock (this)
lock (_assemblies)
{
foreach (string path in _paths)
{