summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorGravatar Thog2016-09-01 18:55:06 +0200
committerGravatar Thog2016-09-01 18:55:06 +0200
commit3e2bb9b2b5e4c6e0e7ea62f4921d2e317c07034e (patch)
tree2ca71a8a213cdcb61b610aaaa4daa4b0e336b103 /src
parentConverter: fix inheritance issue with matcher system (diff)
downloadenigma-3e2bb9b2b5e4c6e0e7ea62f4921d2e317c07034e.tar.gz
enigma-3e2bb9b2b5e4c6e0e7ea62f4921d2e317c07034e.tar.xz
enigma-3e2bb9b2b5e4c6e0e7ea62f4921d2e317c07034e.zip
Fix for the last commit
Diffstat (limited to 'src')
-rw-r--r--src/main/java/cuchaz/enigma/convert/MappingsConverter.java2
-rw-r--r--src/main/java/cuchaz/enigma/convert/MemberMatches.java10
-rw-r--r--src/main/java/cuchaz/enigma/gui/MemberMatchingGui.java2
3 files changed, 10 insertions, 4 deletions
diff --git a/src/main/java/cuchaz/enigma/convert/MappingsConverter.java b/src/main/java/cuchaz/enigma/convert/MappingsConverter.java
index 4b4bb812..abb1bea0 100644
--- a/src/main/java/cuchaz/enigma/convert/MappingsConverter.java
+++ b/src/main/java/cuchaz/enigma/convert/MappingsConverter.java
@@ -436,7 +436,7 @@ public class MappingsConverter {
436 memberMatches.makeMatch(obfSourceEntry, obfDestEntries.iterator().next()); 436 memberMatches.makeMatch(obfSourceEntry, obfDestEntries.iterator().next());
437 } else if (obfDestEntries.isEmpty()) { 437 } else if (obfDestEntries.isEmpty()) {
438 // no match is possible =( 438 // no match is possible =(
439 memberMatches.makeSourceUnmatchable(obfSourceEntry); 439 memberMatches.makeSourceUnmatchable(obfSourceEntry, null);
440 } 440 }
441 } 441 }
442 } 442 }
diff --git a/src/main/java/cuchaz/enigma/convert/MemberMatches.java b/src/main/java/cuchaz/enigma/convert/MemberMatches.java
index e0888d54..97b47b2a 100644
--- a/src/main/java/cuchaz/enigma/convert/MemberMatches.java
+++ b/src/main/java/cuchaz/enigma/convert/MemberMatches.java
@@ -150,7 +150,7 @@ public class MemberMatches<T extends Entry> {
150 { 150 {
151 if (sourceDeobfuscator != null && destDeobfuscator != null) 151 if (sourceDeobfuscator != null && destDeobfuscator != null)
152 { 152 {
153 makeMatch(sourceEntry, destEntry); 153 unmakeMatch(sourceEntry, destEntry, null, null);
154 sourceEntry = (T) sourceEntry.cloneToNewClass( 154 sourceEntry = (T) sourceEntry.cloneToNewClass(
155 sourceDeobfuscator.getJarIndex().getTranslationIndex().resolveEntryClass(sourceEntry, true)); 155 sourceDeobfuscator.getJarIndex().getTranslationIndex().resolveEntryClass(sourceEntry, true));
156 destEntry = (T) destEntry.cloneToNewClass( 156 destEntry = (T) destEntry.cloneToNewClass(
@@ -165,7 +165,13 @@ public class MemberMatches<T extends Entry> {
165 addUnmatchedDestEntry(destEntry); 165 addUnmatchedDestEntry(destEntry);
166 } 166 }
167 167
168 public void makeSourceUnmatchable(T sourceEntry) { 168 public void makeSourceUnmatchable(T sourceEntry, Deobfuscator sourceDeobfuscator) {
169 if (sourceDeobfuscator != null)
170 {
171 makeSourceUnmatchable(sourceEntry, null);
172 sourceEntry = (T) sourceEntry.cloneToNewClass(
173 sourceDeobfuscator.getJarIndex().getTranslationIndex().resolveEntryClass(sourceEntry, true));
174 }
169 assert (!isMatchedSourceEntry(sourceEntry)); 175 assert (!isMatchedSourceEntry(sourceEntry));
170 boolean wasRemoved = m_unmatchedSourceEntries.remove(sourceEntry.getClassEntry(), sourceEntry); 176 boolean wasRemoved = m_unmatchedSourceEntries.remove(sourceEntry.getClassEntry(), sourceEntry);
171 assert (wasRemoved); 177 assert (wasRemoved);
diff --git a/src/main/java/cuchaz/enigma/gui/MemberMatchingGui.java b/src/main/java/cuchaz/enigma/gui/MemberMatchingGui.java
index 8f7d6e3c..9e90dae4 100644
--- a/src/main/java/cuchaz/enigma/gui/MemberMatchingGui.java
+++ b/src/main/java/cuchaz/enigma/gui/MemberMatchingGui.java
@@ -465,7 +465,7 @@ public class MemberMatchingGui<T extends Entry> {
465 protected void unmatchable() { 465 protected void unmatchable() {
466 466
467 // update the field matches 467 // update the field matches
468 m_memberMatches.makeSourceUnmatchable(m_obfSourceEntry); 468 m_memberMatches.makeSourceUnmatchable(m_obfSourceEntry, m_sourceDeobfuscator);
469 save(); 469 save();
470 470
471 // update the ui 471 // update the ui