Browse Source

Fix #2733: Ignore bad metadata when trying to resolve ResolutionScope

pull/2737/head
Siegfried Pammer 3 years ago
parent
commit
186cc51bf7
  1. 8
      ICSharpCode.Decompiler/SRMExtensions.cs

8
ICSharpCode.Decompiler/SRMExtensions.cs

@ -239,6 +239,8 @@ namespace ICSharpCode.Decompiler
if (handle.IsNil) if (handle.IsNil)
return false; return false;
StringHandle nameHandle, namespaceHandle; StringHandle nameHandle, namespaceHandle;
try
{
switch (handle.Kind) switch (handle.Kind)
{ {
case HandleKind.TypeReference: case HandleKind.TypeReference:
@ -263,6 +265,12 @@ namespace ICSharpCode.Decompiler
default: default:
return false; return false;
} }
}
catch (BadImageFormatException)
{
// ignore bad metadata when trying to resolve ResolutionScope et al.
return false;
}
if (knownType.TypeParameterCount == 0) if (knownType.TypeParameterCount == 0)
{ {
if (!reader.StringComparer.Equals(nameHandle, knownType.Name)) if (!reader.StringComparer.Equals(nameHandle, knownType.Name))

Loading…
Cancel
Save