Skip to content

Commit c1acdf1

Browse files
committed
Make config wrapping possible to disable
1 parent 41b71c5 commit c1acdf1

File tree

2 files changed

+6
-0
lines changed

2 files changed

+6
-0
lines changed

common/src/main/java/org/embeddedt/modernfix/core/config/ModernFixEarlyConfig.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -163,6 +163,9 @@ private ModernFixEarlyConfig(File file) {
163163

164164
this.scanForAndBuildMixinOptions();
165165
mixinOptions.addAll(DEFAULT_SETTING_OVERRIDES.keySet());
166+
if(!isFabric) {
167+
mixinOptions.add("mixin.bugfix.fix_config_crashes");
168+
}
166169
for(String optionName : mixinOptions) {
167170
boolean defaultEnabled = DEFAULT_SETTING_OVERRIDES.getOrDefault(optionName, true);
168171
this.options.putIfAbsent(optionName, new Option(optionName, defaultEnabled, false));

forge/src/main/java/org/embeddedt/modernfix/forge/config/ConfigFixer.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
import net.minecraftforge.fml.common.ObfuscationReflectionHelper;
66
import net.minecraftforge.fml.config.ModConfig;
77
import org.embeddedt.modernfix.ModernFix;
8+
import org.embeddedt.modernfix.core.ModernFixMixinPlugin;
89

910
import java.util.Optional;
1011
import java.util.function.Consumer;
@@ -17,6 +18,8 @@ public class ConfigFixer {
1718
* Should have no noticeable performance impact as config handlers are virtually instant.
1819
*/
1920
public static void replaceConfigHandlers() {
21+
if(!ModernFixMixinPlugin.instance.isOptionEnabled("bugfix.fix_config_crashes.ConfigFixerMixin"))
22+
return;
2023
ModList.get().forEachModContainer((id, container) -> {
2124
try {
2225
Optional<Consumer<ModConfig.ModConfigEvent>> configOpt = ObfuscationReflectionHelper.getPrivateValue(ModContainer.class, container, "configHandler");

0 commit comments

Comments
 (0)