diff --git a/common/src/main/java/org/embeddedt/modernfix/common/mixin/perf/blast_search_trees/MinecraftMixin.java b/common/src/main/java/org/embeddedt/modernfix/common/mixin/perf/blast_search_trees/MinecraftMixin.java index 73f6a358..cf5d0044 100644 --- a/common/src/main/java/org/embeddedt/modernfix/common/mixin/perf/blast_search_trees/MinecraftMixin.java +++ b/common/src/main/java/org/embeddedt/modernfix/common/mixin/perf/blast_search_trees/MinecraftMixin.java @@ -7,6 +7,8 @@ import org.embeddedt.modernfix.ModernFix; import org.embeddedt.modernfix.annotation.ClientOnlyMixin; import org.embeddedt.modernfix.searchtree.DummySearchTree; import org.embeddedt.modernfix.searchtree.SearchTreeProviderRegistry; +import org.lwjgl.glfw.GLFW; +import org.lwjgl.glfw.GLFWErrorCallback; import org.spongepowered.asm.mixin.Final; import org.spongepowered.asm.mixin.Mixin; import org.spongepowered.asm.mixin.Shadow; @@ -30,9 +32,12 @@ public class MinecraftMixin { this.searchRegistry.register(SearchRegistry.RECIPE_COLLECTIONS, new DummySearchTree<>()); // grab components for all key mappings in order to prevent them from being loaded off-thread later // this populates the LazyLoadedValues + // we also need to suppress GLFW errors to prevent crashes if a key is missing + GLFWErrorCallback oldCb = GLFW.glfwSetErrorCallback(null); for(KeyMapping mapping : KeyMapping.ALL.values()) { mapping.getTranslatedKeyMessage(); } + GLFW.glfwSetErrorCallback(oldCb); ci.cancel(); } }