summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorGravatar jeff2015-01-18 17:17:27 -0500
committerGravatar jeff2015-01-18 17:17:27 -0500
commit91460a865cc5d4f8d1e0c38fd08c1f071af147bb (patch)
tree99555ea678fcd624846fb4f6b93ef89834d3e799 /src
parentmove BytecodeTools to m3l (diff)
downloadenigma-91460a865cc5d4f8d1e0c38fd08c1f071af147bb.tar.gz
enigma-91460a865cc5d4f8d1e0c38fd08c1f071af147bb.tar.xz
enigma-91460a865cc5d4f8d1e0c38fd08c1f071af147bb.zip
also translate source file attributes so it's easy to browse decompiled sources
Diffstat (limited to 'src')
-rw-r--r--src/cuchaz/enigma/bytecode/ClassTranslator.java8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/cuchaz/enigma/bytecode/ClassTranslator.java b/src/cuchaz/enigma/bytecode/ClassTranslator.java
index bc12405c..735a8fa3 100644
--- a/src/cuchaz/enigma/bytecode/ClassTranslator.java
+++ b/src/cuchaz/enigma/bytecode/ClassTranslator.java
@@ -18,6 +18,7 @@ import javassist.CtField;
18import javassist.CtMethod; 18import javassist.CtMethod;
19import javassist.bytecode.ConstPool; 19import javassist.bytecode.ConstPool;
20import javassist.bytecode.Descriptor; 20import javassist.bytecode.Descriptor;
21import javassist.bytecode.SourceFileAttribute;
21 22
22import com.google.common.collect.Maps; 23import com.google.common.collect.Maps;
23 24
@@ -125,5 +126,12 @@ public class ClassTranslator {
125 } 126 }
126 } 127 }
127 ClassRenamer.renameClasses(c, map); 128 ClassRenamer.renameClasses(c, map);
129
130 // translate the source file attribute too
131 ClassEntry deobfClassEntry = map.get(classEntry);
132 if (deobfClassEntry != null) {
133 String sourceFile = Descriptor.toJvmName(deobfClassEntry.getOuterClassName()) + ".java";
134 c.getClassFile().addAttribute(new SourceFileAttribute(constants, sourceFile));
135 }
128 } 136 }
129} 137}