diff options
| author | 2015-02-09 22:23:45 -0500 | |
|---|---|---|
| committer | 2015-02-09 22:23:45 -0500 | |
| commit | af1041731c8c0ce1846ff7e7b6052ed7327a5dbc (patch) | |
| tree | e781b93f526a6c1ba7b6f5e14c319450199aa1df /src/cuchaz/enigma/gui/GuiController.java | |
| parent | Don't automatically move mappings around. We're more interested in stability ... (diff) | |
| download | enigma-fork-af1041731c8c0ce1846ff7e7b6052ed7327a5dbc.tar.gz enigma-fork-af1041731c8c0ce1846ff7e7b6052ed7327a5dbc.tar.xz enigma-fork-af1041731c8c0ce1846ff7e7b6052ed7327a5dbc.zip | |
fix translation issues, particularly with fields
Diffstat (limited to 'src/cuchaz/enigma/gui/GuiController.java')
| -rw-r--r-- | src/cuchaz/enigma/gui/GuiController.java | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/src/cuchaz/enigma/gui/GuiController.java b/src/cuchaz/enigma/gui/GuiController.java index 61fea9c..9fa633e 100644 --- a/src/cuchaz/enigma/gui/GuiController.java +++ b/src/cuchaz/enigma/gui/GuiController.java | |||
| @@ -186,14 +186,17 @@ public class GuiController { | |||
| 186 | 186 | ||
| 187 | public MethodImplementationsTreeNode getMethodImplementations(MethodEntry deobfMethodEntry) { | 187 | public MethodImplementationsTreeNode getMethodImplementations(MethodEntry deobfMethodEntry) { |
| 188 | MethodEntry obfMethodEntry = m_deobfuscator.obfuscateEntry(deobfMethodEntry); | 188 | MethodEntry obfMethodEntry = m_deobfuscator.obfuscateEntry(deobfMethodEntry); |
| 189 | MethodImplementationsTreeNode rootNode = m_deobfuscator.getJarIndex().getMethodImplementations( | 189 | List<MethodImplementationsTreeNode> rootNodes = m_deobfuscator.getJarIndex().getMethodImplementations( |
| 190 | m_deobfuscator.getTranslator(TranslationDirection.Deobfuscating), | 190 | m_deobfuscator.getTranslator(TranslationDirection.Deobfuscating), |
| 191 | obfMethodEntry | 191 | obfMethodEntry |
| 192 | ); | 192 | ); |
| 193 | if (rootNode == null) { | 193 | if (rootNodes.isEmpty()) { |
| 194 | return null; | 194 | return null; |
| 195 | } | 195 | } |
| 196 | return MethodImplementationsTreeNode.findNode(rootNode, obfMethodEntry); | 196 | if (rootNodes.size() > 1) { |
| 197 | System.err.println("WARNING: Method " + deobfMethodEntry + " implements multiple interfaces. Only showing first one."); | ||
| 198 | } | ||
| 199 | return MethodImplementationsTreeNode.findNode(rootNodes.get(0), obfMethodEntry); | ||
| 197 | } | 200 | } |
| 198 | 201 | ||
| 199 | public FieldReferenceTreeNode getFieldReferences(FieldEntry deobfFieldEntry) { | 202 | public FieldReferenceTreeNode getFieldReferences(FieldEntry deobfFieldEntry) { |