summaryrefslogtreecommitdiff
path: root/src/main/java/cuchaz/enigma/translation
diff options
context:
space:
mode:
authorGravatar gegy10002019-05-10 22:21:11 +0200
committerGravatar gegy10002019-05-10 22:21:11 +0200
commit75f383a1956eb19fc838ea647a7e7b24552324cf (patch)
treed0aa11a90110b60404f40a5f7f39704598491585 /src/main/java/cuchaz/enigma/translation
parentUse our procyon to fix compiler issues (#128) (diff)
downloadenigma-fork-75f383a1956eb19fc838ea647a7e7b24552324cf.tar.gz
enigma-fork-75f383a1956eb19fc838ea647a7e7b24552324cf.tar.xz
enigma-fork-75f383a1956eb19fc838ea647a7e7b24552324cf.zip
Don't remap specialized methods to their bridge partner in bytecode
Diffstat (limited to 'src/main/java/cuchaz/enigma/translation')
-rw-r--r--src/main/java/cuchaz/enigma/translation/mapping/IndexEntryResolver.java10
1 files changed, 5 insertions, 5 deletions
diff --git a/src/main/java/cuchaz/enigma/translation/mapping/IndexEntryResolver.java b/src/main/java/cuchaz/enigma/translation/mapping/IndexEntryResolver.java
index 6c8ed76..78231dd 100644
--- a/src/main/java/cuchaz/enigma/translation/mapping/IndexEntryResolver.java
+++ b/src/main/java/cuchaz/enigma/translation/mapping/IndexEntryResolver.java
@@ -86,7 +86,7 @@ public class IndexEntryResolver implements EntryResolver {
86 ClassEntry ownerClass = entry.getParent(); 86 ClassEntry ownerClass = entry.getParent();
87 87
88 if (entry instanceof MethodEntry) { 88 if (entry instanceof MethodEntry) {
89 MethodEntry bridgeMethod = bridgeMethodIndex.getBridgeFromAccessed((MethodEntry) entry); 89 MethodEntry bridgeMethod = bridgeMethodIndex.getBridgeFromSpecialized((MethodEntry) entry);
90 if (bridgeMethod != null && ownerClass.equals(bridgeMethod.getParent())) { 90 if (bridgeMethod != null && ownerClass.equals(bridgeMethod.getParent())) {
91 Set<Entry<ClassEntry>> resolvedBridge = resolveChildEntry(bridgeMethod, strategy); 91 Set<Entry<ClassEntry>> resolvedBridge = resolveChildEntry(bridgeMethod, strategy);
92 if (!resolvedBridge.isEmpty()) { 92 if (!resolvedBridge.isEmpty()) {
@@ -183,10 +183,10 @@ public class IndexEntryResolver implements EntryResolver {
183 } 183 }
184 184
185 // look at bridge methods! 185 // look at bridge methods!
186 MethodEntry bridgedMethod = bridgeMethodIndex.getBridgeFromAccessed(methodEntry); 186 MethodEntry bridgedMethod = bridgeMethodIndex.getBridgeFromSpecialized(methodEntry);
187 while (bridgedMethod != null) { 187 while (bridgedMethod != null) {
188 methodEntries.addAll(resolveEquivalentMethods(bridgedMethod)); 188 methodEntries.addAll(resolveEquivalentMethods(bridgedMethod));
189 bridgedMethod = bridgeMethodIndex.getBridgeFromAccessed(bridgedMethod); 189 bridgedMethod = bridgeMethodIndex.getBridgeFromSpecialized(bridgedMethod);
190 } 190 }
191 191
192 // look at interface methods too 192 // look at interface methods too
@@ -209,10 +209,10 @@ public class IndexEntryResolver implements EntryResolver {
209 } 209 }
210 210
211 // look at bridge methods! 211 // look at bridge methods!
212 MethodEntry bridgedMethod = bridgeMethodIndex.getBridgeFromAccessed(methodEntry); 212 MethodEntry bridgedMethod = bridgeMethodIndex.getBridgeFromSpecialized(methodEntry);
213 while (bridgedMethod != null) { 213 while (bridgedMethod != null) {
214 methodEntries.addAll(resolveEquivalentMethods(bridgedMethod)); 214 methodEntries.addAll(resolveEquivalentMethods(bridgedMethod));
215 bridgedMethod = bridgeMethodIndex.getBridgeFromAccessed(bridgedMethod); 215 bridgedMethod = bridgeMethodIndex.getBridgeFromSpecialized(bridgedMethod);
216 } 216 }
217 217
218 // recurse 218 // recurse