Browse Source

Refactor code in HandleCommandLineArgumentsAfterShowList as per code-review.

pull/1324/head
Siegfried Pammer 7 years ago
parent
commit
c73f46d27c
  1. 24
      ILSpy/MainWindow.xaml.cs

24
ILSpy/MainWindow.xaml.cs

@ -300,24 +300,16 @@ namespace ICSharpCode.ILSpy
var module = asm.GetPEFileOrNull(); var module = asm.GetPEFileOrNull();
if (CanResolveTypeInPEFile(module, typeRef, out var typeHandle)) { if (CanResolveTypeInPEFile(module, typeRef, out var typeHandle)) {
IEntity mr = null; IEntity mr = null;
if (typeHandle.Kind == HandleKind.ExportedType) { ICompilation compilation = typeHandle.Kind == HandleKind.ExportedType
var decompilerTypeSystem = new DecompilerTypeSystem(module, module.GetAssemblyResolver()); ? new DecompilerTypeSystem(module, module.GetAssemblyResolver())
if (memberRef == null) { : new SimpleCompilation(module, MinimalCorlib.Instance);
mr = typeRef.Resolve(new SimpleTypeResolveContext(decompilerTypeSystem)) as ITypeDefinition; mr = memberRef == null
} else { ? typeRef.Resolve(new SimpleTypeResolveContext(compilation)) as ITypeDefinition
mr = memberRef.Resolve(new SimpleTypeResolveContext(decompilerTypeSystem)); : (IEntity)memberRef.Resolve(new SimpleTypeResolveContext(compilation));
}
} else {
var compilation = new SimpleCompilation(module, MinimalCorlib.Instance);
if (memberRef == null) {
mr = ((MetadataModule)compilation.MainModule).GetDefinition((TypeDefinitionHandle)typeHandle);
} else {
mr = memberRef.Resolve(new SimpleTypeResolveContext(compilation));
}
}
if (mr != null && mr.ParentModule.PEFile != null) { if (mr != null && mr.ParentModule.PEFile != null) {
found = true; found = true;
// Defer JumpToReference call to allow an assembly that was loaded while
// resolving a type-forwarder in FindMemberByKey to appear in the assembly list.
Dispatcher.BeginInvoke(new Action(() => JumpToReference(mr)), DispatcherPriority.Loaded); Dispatcher.BeginInvoke(new Action(() => JumpToReference(mr)), DispatcherPriority.Loaded);
break; break;
} }

Loading…
Cancel
Save