From f4682fd75a4c9973928387157c2c1e12caab4bc9 Mon Sep 17 00:00:00 2001 From: Daniel Grunwald Date: Mon, 30 Oct 2017 23:22:58 +0100 Subject: [PATCH] AssignVariableNames.GetNameFromInstruction: also handle LdFlda directly --- .../IL/Transforms/AssignVariableNames.cs | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/ICSharpCode.Decompiler/IL/Transforms/AssignVariableNames.cs b/ICSharpCode.Decompiler/IL/Transforms/AssignVariableNames.cs index 3d23b9ab7..e877b951a 100644 --- a/ICSharpCode.Decompiler/IL/Transforms/AssignVariableNames.cs +++ b/ICSharpCode.Decompiler/IL/Transforms/AssignVariableNames.cs @@ -226,14 +226,11 @@ namespace ICSharpCode.Decompiler.IL.Transforms { switch (inst) { case LdObj ldobj: - IField field; - if (ldobj.Target is LdFlda ldflda) - field = ldflda.Field; - else if (ldobj.Target is LdsFlda ldsflda) - field = ldsflda.Field; - else - break; - return CleanUpVariableName(field.Name); + return GetNameFromInstruction(ldobj.Target); + case LdFlda ldflda: + return CleanUpVariableName(ldflda.Field.Name); + case LdsFlda ldsflda: + return CleanUpVariableName(ldsflda.Field.Name); case CallInstruction call: if (call is NewObj) break; IMethod m = call.Method;