From 75eb289de3d8742c8ba4947b341355873154bbcc Mon Sep 17 00:00:00 2001 From: gegy1000 Date: Mon, 11 Feb 2019 19:51:07 +0200 Subject: Disable remapping of local variables until proper support is implemented --- src/main/java/cuchaz/enigma/Deobfuscator.java | 3 +++ .../java/cuchaz/enigma/gui/DecompiledClassSource.java | 16 ++++++++-------- 2 files changed, 11 insertions(+), 8 deletions(-) (limited to 'src/main') diff --git a/src/main/java/cuchaz/enigma/Deobfuscator.java b/src/main/java/cuchaz/enigma/Deobfuscator.java index ef452b0..843c761 100644 --- a/src/main/java/cuchaz/enigma/Deobfuscator.java +++ b/src/main/java/cuchaz/enigma/Deobfuscator.java @@ -32,6 +32,7 @@ import cuchaz.enigma.translation.mapping.tree.DeltaTrackingTree; import cuchaz.enigma.translation.mapping.tree.EntryTree; import cuchaz.enigma.translation.representation.entry.ClassEntry; import cuchaz.enigma.translation.representation.entry.Entry; +import cuchaz.enigma.translation.representation.entry.LocalVariableEntry; import cuchaz.enigma.translation.representation.entry.MethodEntry; import org.objectweb.asm.ClassVisitor; import org.objectweb.asm.ClassWriter; @@ -352,6 +353,8 @@ public class Deobfuscator { } else if (name.equals("wait") && sig.equals("(JI)V")) { return false; } + } else if (obfEntry instanceof LocalVariableEntry && !((LocalVariableEntry) obfEntry).isArgument()) { + return false; } return this.jarIndex.getEntryIndex().hasEntry(obfEntry); diff --git a/src/main/java/cuchaz/enigma/gui/DecompiledClassSource.java b/src/main/java/cuchaz/enigma/gui/DecompiledClassSource.java index 03f76c9..0ac41b3 100644 --- a/src/main/java/cuchaz/enigma/gui/DecompiledClassSource.java +++ b/src/main/java/cuchaz/enigma/gui/DecompiledClassSource.java @@ -45,10 +45,10 @@ public class DecompiledClassSource { private String remapToken(Token token, Token movedToken, Translator translator) { EntryReference, Entry> reference = obfuscatedIndex.getReference(token); - if (deobfuscator.isRenamable(reference)) { - Entry entry = reference.getNameableEntry(); - Entry translatedEntry = translator.translate(entry); + Entry entry = reference.getNameableEntry(); + Entry translatedEntry = translator.translate(entry); + if (deobfuscator.isRenamable(reference)) { if (isDeobfuscated(entry, translatedEntry)) { highlightToken(movedToken, TokenHighlightType.DEOBFUSCATED); return translatedEntry.getSourceRemapName(); @@ -60,14 +60,14 @@ public class DecompiledClassSource { } highlightToken(movedToken, TokenHighlightType.OBFUSCATED); - - String defaultName = generateDefaultName(translatedEntry); - if (defaultName != null) { - return defaultName; - } } } + String defaultName = generateDefaultName(translatedEntry); + if (defaultName != null) { + return defaultName; + } + return null; } -- cgit v1.2.3