summaryrefslogtreecommitdiff
path: root/src/main/java/cuchaz/enigma/mapping/MethodMapping.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/cuchaz/enigma/mapping/MethodMapping.java')
-rw-r--r--src/main/java/cuchaz/enigma/mapping/MethodMapping.java15
1 files changed, 14 insertions, 1 deletions
diff --git a/src/main/java/cuchaz/enigma/mapping/MethodMapping.java b/src/main/java/cuchaz/enigma/mapping/MethodMapping.java
index 455ff6b..f973d6b 100644
--- a/src/main/java/cuchaz/enigma/mapping/MethodMapping.java
+++ b/src/main/java/cuchaz/enigma/mapping/MethodMapping.java
@@ -14,6 +14,7 @@ import com.google.common.collect.Maps;
14 14
15import java.util.Map; 15import java.util.Map;
16 16
17import cuchaz.enigma.throwables.IllegalNameException;
17import cuchaz.enigma.throwables.MappingConflict; 18import cuchaz.enigma.throwables.MappingConflict;
18 19
19public class MethodMapping implements Comparable<MethodMapping>, MemberMapping<BehaviorEntry> { 20public class MethodMapping implements Comparable<MethodMapping>, MemberMapping<BehaviorEntry> {
@@ -75,7 +76,19 @@ public class MethodMapping implements Comparable<MethodMapping>, MemberMapping<B
75 } 76 }
76 77
77 public void setObfName(String name) { 78 public void setObfName(String name) {
78 this.obfName = NameValidator.validateMethodName(name); 79 try
80 {
81 NameValidator.validateMethodName(name);
82 } catch (IllegalNameException ex)
83 {
84 // Invalid name, damn obfuscation! Map to a deob name with another name to avoid issues
85 if (this.deobfName == null)
86 {
87 System.err.println("WARNING: " + name + " is conflicting, auto deobfuscate to " + (name + "_auto_deob"));
88 setDeobfName(name + "_auto_deob");
89 }
90 }
91 this.obfName = name;
79 } 92 }
80 93
81 public void setObfSignature(Signature val) { 94 public void setObfSignature(Signature val) {