From 42e3b23f03a98a81ce7238bda96c4f046eab30be Mon Sep 17 00:00:00 2001 From: jeff Date: Thu, 2 Oct 2014 22:18:23 -0400 Subject: fixed issue with decompiling inner classes --- src/cuchaz/enigma/Deobfuscator.java | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'src/cuchaz/enigma/Deobfuscator.java') diff --git a/src/cuchaz/enigma/Deobfuscator.java b/src/cuchaz/enigma/Deobfuscator.java index 7e0f092..82c786c 100644 --- a/src/cuchaz/enigma/Deobfuscator.java +++ b/src/cuchaz/enigma/Deobfuscator.java @@ -127,11 +127,13 @@ public class Deobfuscator Map renames = Maps.newHashMap(); for( ClassMapping classMapping : val.classes() ) { - String outerClassName = m_jarIndex.getOuterClass( classMapping.getObfName() ); + // make sure we strip the packages off of obfuscated inner classes + String innerClassName = new ClassEntry( classMapping.getObfName() ).getSimpleName(); + String outerClassName = m_jarIndex.getOuterClass( innerClassName ); if( outerClassName != null ) { // build the composite class name - String newName = outerClassName + "$" + new ClassEntry( classMapping.getObfName() ).getSimpleName(); + String newName = outerClassName + "$" + innerClassName; // add a rename renames.put( classMapping.getObfName(), newName ); @@ -217,7 +219,7 @@ public class Deobfuscator { // check the class ClassEntry classEntry = new ClassEntry( classMapping.getObfName() ); - String outerClassName = m_jarIndex.getOuterClass( classMapping.getObfName() ); + String outerClassName = m_jarIndex.getOuterClass( classEntry.getSimpleName() ); if( outerClassName != null ) { classEntry = new ClassEntry( outerClassName + "$" + classMapping.getObfName() ); -- cgit v1.2.3