Browse Source

Fix ArgumentException: ignore duplicate keys after variable splitting in TransformDisplayClassUsage

pull/1612/head
Siegfried Pammer 6 years ago
parent
commit
2ca8c31d8e
  1. 2
      ICSharpCode.Decompiler/IL/Transforms/TransformDisplayClassUsage.cs

2
ICSharpCode.Decompiler/IL/Transforms/TransformDisplayClassUsage.cs

@ -183,7 +183,7 @@ namespace ICSharpCode.Decompiler.IL.Transforms
}; };
displayClasses.Add(thisVariable, displayClass); displayClasses.Add(thisVariable, displayClass);
foreach (var stateMachineVariable in nestedFunction.Variables) { foreach (var stateMachineVariable in nestedFunction.Variables) {
if (stateMachineVariable.StateMachineField == null) if (stateMachineVariable.StateMachineField == null || displayClass.Variables.ContainsKey(stateMachineVariable.StateMachineField))
continue; continue;
displayClass.Variables.Add(stateMachineVariable.StateMachineField, new DisplayClassVariable { displayClass.Variables.Add(stateMachineVariable.StateMachineField, new DisplayClassVariable {
Variable = stateMachineVariable, Variable = stateMachineVariable,

Loading…
Cancel
Save