From 66fd8ad103c6f47a9aa6c52ef9ab08250baaa860 Mon Sep 17 00:00:00 2001 From: Chicken-Bomes Date: Tue, 29 Apr 2014 13:15:49 +1000 Subject: [PATCH] Reduce classloading remapping to minecraft classes. Everything else should be srg. --- src/codechicken/lib/asm/ClassHeirachyManager.java | 4 ++++ src/codechicken/lib/asm/ObfMapping.java | 9 ++++++++- 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/src/codechicken/lib/asm/ClassHeirachyManager.java b/src/codechicken/lib/asm/ClassHeirachyManager.java index 9f0acec..562bd9d 100644 --- a/src/codechicken/lib/asm/ClassHeirachyManager.java +++ b/src/codechicken/lib/asm/ClassHeirachyManager.java @@ -15,6 +15,10 @@ import java.util.HashSet; */ public class ClassHeirachyManager implements IClassTransformer { + static { + ASMInit.init(); + } + public static class SuperCache { String superclass; diff --git a/src/codechicken/lib/asm/ObfMapping.java b/src/codechicken/lib/asm/ObfMapping.java index c7c5579..07c237b 100644 --- a/src/codechicken/lib/asm/ObfMapping.java +++ b/src/codechicken/lib/asm/ObfMapping.java @@ -72,6 +72,10 @@ public class ObfMapping public String map(String typeName) { return FMLDeobfuscatingRemapper.INSTANCE.unmap(typeName); } + + public boolean isObf(String typeName) { + return !map(typeName).equals(typeName); + } } public static class MCPRemapper extends Remapper implements LineProcessor @@ -379,7 +383,10 @@ public class ObfMapping } public ObfMapping toClassloading() { - map(obfuscated ? obfMapper : mcpMapper); + if(!obfuscated) + map(mcpMapper); + else if(obfMapper.isObf(s_owner)) + map(obfMapper); return this; }