summaryrefslogtreecommitdiff
path: root/src/cuchaz/enigma/mapping/MappingsRenamer.java
diff options
context:
space:
mode:
authorGravatar jeff2014-10-01 00:04:18 -0400
committerGravatar jeff2014-10-01 00:04:18 -0400
commit5eeee98418bb39367258442a82b75a081a6f91e0 (patch)
tree16bd812576caad8a3af7f5616bdcaac7bc30b992 /src/cuchaz/enigma/mapping/MappingsRenamer.java
parentfixed nasty issue with renaming inner classes, but alas, more bugs remain (diff)
downloadenigma-fork-5eeee98418bb39367258442a82b75a081a6f91e0.tar.gz
enigma-fork-5eeee98418bb39367258442a82b75a081a6f91e0.tar.xz
enigma-fork-5eeee98418bb39367258442a82b75a081a6f91e0.zip
fixed inner class renaming bug
also added smarter sorting to class mappings
Diffstat (limited to 'src/cuchaz/enigma/mapping/MappingsRenamer.java')
-rw-r--r--src/cuchaz/enigma/mapping/MappingsRenamer.java11
1 files changed, 3 insertions, 8 deletions
diff --git a/src/cuchaz/enigma/mapping/MappingsRenamer.java b/src/cuchaz/enigma/mapping/MappingsRenamer.java
index 24ec731..3e5f1a4 100644
--- a/src/cuchaz/enigma/mapping/MappingsRenamer.java
+++ b/src/cuchaz/enigma/mapping/MappingsRenamer.java
@@ -121,11 +121,11 @@ public class MappingsRenamer
121 deobfName = NameValidator.validateMethodName( deobfName ); 121 deobfName = NameValidator.validateMethodName( deobfName );
122 for( MethodEntry entry : implementations ) 122 for( MethodEntry entry : implementations )
123 { 123 {
124 String deobfSignature = getTranslator( TranslationDirection.Deobfuscating ).translateSignature( obf.getSignature() ); 124 String deobfSignature = m_mappings.getTranslator( TranslationDirection.Deobfuscating ).translateSignature( obf.getSignature() );
125 MethodEntry targetEntry = new MethodEntry( entry.getClassEntry(), deobfName, deobfSignature ); 125 MethodEntry targetEntry = new MethodEntry( entry.getClassEntry(), deobfName, deobfSignature );
126 if( m_mappings.containsDeobfMethod( entry.getClassEntry(), deobfName, entry.getSignature() ) || m_index.containsObfBehavior( targetEntry ) ) 126 if( m_mappings.containsDeobfMethod( entry.getClassEntry(), deobfName, entry.getSignature() ) || m_index.containsObfBehavior( targetEntry ) )
127 { 127 {
128 String deobfClassName = getTranslator( TranslationDirection.Deobfuscating ).translateClass( entry.getClassName() ); 128 String deobfClassName = m_mappings.getTranslator( TranslationDirection.Deobfuscating ).translateClass( entry.getClassName() );
129 throw new IllegalNameException( deobfName, "There is already a method with that name and signature in class " + deobfClassName ); 129 throw new IllegalNameException( deobfName, "There is already a method with that name and signature in class " + deobfClassName );
130 } 130 }
131 } 131 }
@@ -142,7 +142,7 @@ public class MappingsRenamer
142 MethodEntry targetEntry = new MethodEntry( obf.getClassEntry(), deobfName, obf.getSignature() ); 142 MethodEntry targetEntry = new MethodEntry( obf.getClassEntry(), deobfName, obf.getSignature() );
143 if( m_mappings.containsDeobfMethod( obf.getClassEntry(), deobfName, obf.getSignature() ) || m_index.containsObfBehavior( targetEntry ) ) 143 if( m_mappings.containsDeobfMethod( obf.getClassEntry(), deobfName, obf.getSignature() ) || m_index.containsObfBehavior( targetEntry ) )
144 { 144 {
145 String deobfClassName = getTranslator( TranslationDirection.Deobfuscating ).translateClass( obf.getClassName() ); 145 String deobfClassName = m_mappings.getTranslator( TranslationDirection.Deobfuscating ).translateClass( obf.getClassName() );
146 throw new IllegalNameException( deobfName, "There is already a method with that name and signature in class " + deobfClassName ); 146 throw new IllegalNameException( deobfName, "There is already a method with that name and signature in class " + deobfClassName );
147 } 147 }
148 148
@@ -288,9 +288,4 @@ public class MappingsRenamer
288 } 288 }
289 return classMapping; 289 return classMapping;
290 } 290 }
291
292 private Translator getTranslator( TranslationDirection direction )
293 {
294 return m_mappings.getTranslator( m_index.getTranslationIndex(), direction );
295 }
296} 291}