diff options
| author | 2014-08-31 21:19:57 -0400 | |
|---|---|---|
| committer | 2014-08-31 21:19:57 -0400 | |
| commit | 30f552a3b31b4234d3a63375b6c939826b015ece (patch) | |
| tree | 2aadc973ba7e44ae7abacda3ed823e47e10fb005 | |
| parent | added simple loading screen for jars (diff) | |
| download | enigma-30f552a3b31b4234d3a63375b6c939826b015ece.tar.gz enigma-30f552a3b31b4234d3a63375b6c939826b015ece.tar.xz enigma-30f552a3b31b4234d3a63375b6c939826b015ece.zip | |
fixed crash finding related method implementations when method doesn't implement interface
| -rw-r--r-- | src/cuchaz/enigma/analysis/JarIndex.java | 6 | ||||
| -rw-r--r-- | src/cuchaz/enigma/analysis/MethodImplementationsTreeNode.java | 5 |
2 files changed, 10 insertions, 1 deletions
diff --git a/src/cuchaz/enigma/analysis/JarIndex.java b/src/cuchaz/enigma/analysis/JarIndex.java index 4279dedd..fc19e7bc 100644 --- a/src/cuchaz/enigma/analysis/JarIndex.java +++ b/src/cuchaz/enigma/analysis/JarIndex.java | |||
| @@ -663,7 +663,11 @@ public class JarIndex | |||
| 663 | } | 663 | } |
| 664 | 664 | ||
| 665 | // look at interface methods too | 665 | // look at interface methods too |
| 666 | getRelatedMethodImplementations( methodEntries, getMethodImplementations( null, methodEntry ) ); | 666 | MethodImplementationsTreeNode implementations = getMethodImplementations( null, methodEntry ); |
| 667 | if( implementations != null ) | ||
| 668 | { | ||
| 669 | getRelatedMethodImplementations( methodEntries, implementations ); | ||
| 670 | } | ||
| 667 | 671 | ||
| 668 | // recurse | 672 | // recurse |
| 669 | for( int i=0; i<node.getChildCount(); i++ ) | 673 | for( int i=0; i<node.getChildCount(); i++ ) |
diff --git a/src/cuchaz/enigma/analysis/MethodImplementationsTreeNode.java b/src/cuchaz/enigma/analysis/MethodImplementationsTreeNode.java index b529f3f6..b7434e84 100644 --- a/src/cuchaz/enigma/analysis/MethodImplementationsTreeNode.java +++ b/src/cuchaz/enigma/analysis/MethodImplementationsTreeNode.java | |||
| @@ -29,6 +29,11 @@ public class MethodImplementationsTreeNode extends DefaultMutableTreeNode | |||
| 29 | 29 | ||
| 30 | public MethodImplementationsTreeNode( Translator deobfuscatingTranslator, MethodEntry entry ) | 30 | public MethodImplementationsTreeNode( Translator deobfuscatingTranslator, MethodEntry entry ) |
| 31 | { | 31 | { |
| 32 | if( entry == null ) | ||
| 33 | { | ||
| 34 | throw new IllegalArgumentException( "entry cannot be null!" ); | ||
| 35 | } | ||
| 36 | |||
| 32 | m_deobfuscatingTranslator = deobfuscatingTranslator; | 37 | m_deobfuscatingTranslator = deobfuscatingTranslator; |
| 33 | m_entry = entry; | 38 | m_entry = entry; |
| 34 | } | 39 | } |