diff options
| author | 2015-01-18 17:17:27 -0500 | |
|---|---|---|
| committer | 2015-01-18 17:17:27 -0500 | |
| commit | 91460a865cc5d4f8d1e0c38fd08c1f071af147bb (patch) | |
| tree | 99555ea678fcd624846fb4f6b93ef89834d3e799 | |
| parent | move BytecodeTools to m3l (diff) | |
| download | enigma-91460a865cc5d4f8d1e0c38fd08c1f071af147bb.tar.gz enigma-91460a865cc5d4f8d1e0c38fd08c1f071af147bb.tar.xz enigma-91460a865cc5d4f8d1e0c38fd08c1f071af147bb.zip | |
also translate source file attributes so it's easy to browse decompiled sources
| -rw-r--r-- | src/cuchaz/enigma/bytecode/ClassTranslator.java | 8 |
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; | |||
| 18 | import javassist.CtMethod; | 18 | import javassist.CtMethod; |
| 19 | import javassist.bytecode.ConstPool; | 19 | import javassist.bytecode.ConstPool; |
| 20 | import javassist.bytecode.Descriptor; | 20 | import javassist.bytecode.Descriptor; |
| 21 | import javassist.bytecode.SourceFileAttribute; | ||
| 21 | 22 | ||
| 22 | import com.google.common.collect.Maps; | 23 | import 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 | } |