Skip to content

Commit 1f8bf59

Browse files
committed
mitigation: very old forge will crash trying to load package name starting with "mod_"
Because of crummy regex https://github.com/MinecraftForge/FML/blob/57be417b7c29bb23e152f400752f68f33115915d/common/cpw/mods/fml/common/Loader.java#L66 Old forge will incorrectly load "mod_blahblah/yourclass.class" while expecting a "yourclass.class" because package name started with "mod_". Fixes #265
1 parent ffe4929 commit 1f8bf59

4 files changed

Lines changed: 6 additions & 5 deletions

File tree

Binary file not shown.
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
2be860186e97caa614b289022a73b9774adcb85b
1+
85d29ace15034e70e12253a7b596e49bc1a207df

methods_injector_agent/src/main/java/org/angelauramc/methodsInjectorAgent/mod_compatibility_injector/VeilImguiOverrideDisable.java renamed to methods_injector_agent/src/main/java/org/angelauramc/methodsInjectorAgent/mods_compatibility_injector/VeilImguiOverrideDisable.java

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,11 @@
1-
package org.angelauramc.methodsInjectorAgent.mod_compatibility_injector;
2-
1+
package org.angelauramc.methodsInjectorAgent.mods_compatibility_injector;
2+
// If you dare call this mod_compatibility_injector old forge will try to load you as a class from
3+
// a mod. See https://github.com/MinecraftForge/FML/blob/57be417b7c29bb23e152f400752f68f33115915d/common/cpw/mods/fml/common/Loader.java#L66
4+
// Do not name any package name that gets loaded into classpath starting with "mod_", case-sensitive
35
import java.lang.instrument.ClassFileTransformer;
46
import java.lang.instrument.Instrumentation;
57
import java.security.ProtectionDomain;
68

7-
import org.angelauramc.methodsInjectorAgent.lwjgl2_methods_injector.ALC10Injector;
89
import org.objectweb.asm.ClassReader;
910
import org.objectweb.asm.ClassVisitor;
1011
import org.objectweb.asm.ClassWriter;

methods_injector_agent/src/main/java/org/angelauramc/methodsInjectorAgent/startInjectors.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
import org.angelauramc.methodsInjectorAgent.lwjgl2_methods_injector.ALC10Injector;
44
import org.angelauramc.methodsInjectorAgent.lwjgl2_methods_injector.ASM5OverrideInjector;
5-
import org.angelauramc.methodsInjectorAgent.mod_compatibility_injector.VeilImguiOverrideDisable;
5+
import org.angelauramc.methodsInjectorAgent.mods_compatibility_injector.VeilImguiOverrideDisable;
66

77
import java.lang.instrument.Instrumentation;
88

0 commit comments

Comments
 (0)