diff --git a/ILSpy/LoadedAssembly.cs b/ILSpy/LoadedAssembly.cs index a506c0924..aef112b81 100644 --- a/ILSpy/LoadedAssembly.cs +++ b/ILSpy/LoadedAssembly.cs @@ -488,9 +488,14 @@ namespace ICSharpCode.ILSpy return resolver; } + private MyUniversalResolver GetUniversalResolver() + { + return LazyInitializer.EnsureInitialized(ref this.universalResolver, () => new MyUniversalResolver(this)); + } + public AssemblyReferenceClassifier GetAssemblyReferenceClassifier() { - return universalResolver; + return GetUniversalResolver(); } /// @@ -582,12 +587,7 @@ namespace ICSharpCode.ILSpy } } - if (universalResolver == null) - { - universalResolver = new MyUniversalResolver(this); - } - - file = universalResolver.FindAssemblyFile(fullName); + file = GetUniversalResolver().FindAssemblyFile(fullName); foreach (LoadedAssembly loaded in assemblyList.GetAssemblies()) {