Browse Source

Fix #2945: Do not treat arbitrary method references pointing to members of the current type definition as part of the method. Only do so for compiler-generated methods.

pull/2960/head
Siegfried Pammer 3 years ago
parent
commit
caec6a6a83
  1. 2
      ICSharpCode.Decompiler/CSharp/CSharpDecompiler.cs

2
ICSharpCode.Decompiler/CSharp/CSharpDecompiler.cs

@ -849,7 +849,7 @@ namespace ICSharpCode.Decompiler.CSharp
foreach (var m in closureType.GetMethods()) foreach (var m in closureType.GetMethods())
{ {
var methodDef = module.Metadata.GetMethodDefinition(m); var methodDef = module.Metadata.GetMethodDefinition(m);
if (methodDef.Name == memberRef.Name) if (methodDef.Name == memberRef.Name && m.IsCompilerGeneratedOrIsInCompilerGeneratedClass(module.Metadata))
connectedMethods.Enqueue(m); connectedMethods.Enqueue(m);
} }
} }

Loading…
Cancel
Save