isXander / Controlify

Another controller mod - for fabric!
https://www.isxander.dev/mods/controlify
GNU Lesser General Public License v3.0
119 stars 22 forks source link

Crash when open controller settings[Bug] #362

Open beecusp opened 1 week ago

beecusp commented 1 week ago

Current Behaviour

When i try to open the controller settings my game crashes

Expected Behaviour

not to crash when opening settings

Screenshots

No response

Reproduction Steps

  1. Update Controlify
  2. Go to Controller Settings in Minecraft
  3. Click Settings on connected controller
  4. Game Crash

Logs

--- Minecraft Crash Report ----
// This doesn't make any sense!

Time: 2024-06-26 20:01:34
Description: mouseClicked event handler

java.lang.RuntimeException: Mixin transformation of dev.isxander.yacl3.gui.YACLScreen$CategoryTab failed
    at net.fabricmc.loader.impl.launch.knot.KnotClassDelegate.getPostMixinClassByteArray(KnotClassDelegate.java:427)
    at net.fabricmc.loader.impl.launch.knot.KnotClassDelegate.tryLoadClass(KnotClassDelegate.java:323)
    at net.fabricmc.loader.impl.launch.knot.KnotClassDelegate.loadClass(KnotClassDelegate.java:218)
    at net.fabricmc.loader.impl.launch.knot.KnotClassLoader.loadClass(KnotClassLoader.java:119)
    at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:525)
    at dev.isxander.yacl3.gui.YACLScreen.lambda$init$4(YACLScreen.java:89)
    at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
    at java.base/java.util.Spliterators$ArraySpliterator.forEachRemaining(Spliterators.java:992)
    at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
    at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499)
    at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:575)
    at java.base/java.util.stream.AbstractPipeline.evaluateToArrayNode(AbstractPipeline.java:260)
    at java.base/java.util.stream.ReferencePipeline.toArray(ReferencePipeline.java:616)
    at java.base/java.util.stream.ReferencePipeline.toArray(ReferencePipeline.java:622)
    at java.base/java.util.stream.ReferencePipeline.toList(ReferencePipeline.java:627)
    at dev.isxander.yacl3.gui.YACLScreen.method_25426(YACLScreen.java:90)
    at net.minecraft.class_437.method_25423(class_437.java:298)
    at net.minecraft.class_310.method_1507(class_310.java:1187)
    at dev.isxander.controlify.gui.screen.ControllerCarouselScreen$CarouselEntry.lambda$new$0(ControllerCarouselScreen.java:241)
    at net.minecraft.class_4185.method_25306(class_4185.java:95)
    at net.minecraft.class_4264.method_25348(class_4264.java:48)
    at net.minecraft.class_339.method_25402(class_339.java:145)
    at net.minecraft.class_4069.method_25402(class_4069.java:38)
    at dev.isxander.controlify.gui.screen.ControllerCarouselScreen$CarouselEntry.method_25402(ControllerCarouselScreen.java:321)
    at net.minecraft.class_4069.method_25402(class_4069.java:38)
    at net.minecraft.class_312.method_1611(class_312.java:99)
    at net.minecraft.class_437.method_25412(class_437.java:414)
    at net.minecraft.class_312.method_1601(class_312.java:99)
    at net.minecraft.class_312.method_22686(class_312.java:180)
    at net.minecraft.class_1255.execute(class_1255.java:102)
    at net.minecraft.class_312.method_22684(class_312.java:180)
    at org.lwjgl.glfw.GLFWMouseButtonCallbackI.callback(GLFWMouseButtonCallbackI.java:43)
    at org.lwjgl.system.JNI.invokeV(Native Method)
    at org.lwjgl.glfw.GLFW.glfwWaitEventsTimeout(GLFW.java:3509)
    at com.mojang.blaze3d.systems.RenderSystem.limitDisplayFPS(RenderSystem.java:238)
    at net.minecraft.class_310.method_1523(class_310.java:1352)
    at net.minecraft.class_310.method_1514(class_310.java:888)
    at net.minecraft.client.main.Main.main(Main.java:265)
    at net.fabricmc.loader.impl.game.minecraft.MinecraftGameProvider.launch(MinecraftGameProvider.java:470)
    at net.fabricmc.loader.impl.launch.knot.Knot.launch(Knot.java:74)
    at net.fabricmc.loader.impl.launch.knot.KnotClient.main(KnotClient.java:23)
Caused by: org.spongepowered.asm.mixin.transformer.throwables.MixinTransformerError: An unexpected critical error was encountered
    at org.spongepowered.asm.mixin.transformer.MixinProcessor.applyMixins(MixinProcessor.java:392)
    at org.spongepowered.asm.mixin.transformer.MixinTransformer.transformClass(MixinTransformer.java:234)
    at org.spongepowered.asm.mixin.transformer.MixinTransformer.transformClassBytes(MixinTransformer.java:202)
    at net.fabricmc.loader.impl.launch.knot.KnotClassDelegate.getPostMixinClassByteArray(KnotClassDelegate.java:422)
    ... 40 more
Caused by: org.spongepowered.asm.mixin.throwables.MixinApplyError: Mixin [controlify.mixins.json:compat.yacl.YACLScreenCategoryTabMixin from mod controlify] from phase [DEFAULT] in config [controlify.mixins.json] FAILED during APPLY
    at org.spongepowered.asm.mixin.transformer.MixinProcessor.handleMixinError(MixinProcessor.java:638)
    at org.spongepowered.asm.mixin.transformer.MixinProcessor.handleMixinApplyError(MixinProcessor.java:589)
    at org.spongepowered.asm.mixin.transformer.MixinProcessor.applyMixins(MixinProcessor.java:379)
    ... 43 more
Caused by: org.spongepowered.asm.mixin.injection.throwables.InvalidInjectionException: Invalid descriptor on controlify.mixins.json:compat.yacl.YACLScreenCategoryTabMixin from mod controlify->@Inject::onConstructCategory(Ldev/isxander/yacl3/gui/YACLScreen;Ldev/isxander/yacl3/api/ConfigCategory;Lorg/spongepowered/asm/mixin/injection/callback/CallbackInfo;)V! Expected (Ldev/isxander/yacl3/gui/YACLScreen;Ldev/isxander/yacl3/api/ConfigCategory;Lnet/minecraft/class_8030;Lorg/spongepowered/asm/mixin/injection/callback/CallbackInfo;)V but found (Ldev/isxander/yacl3/gui/YACLScreen;Ldev/isxander/yacl3/api/ConfigCategory;Lorg/spongepowered/asm/mixin/injection/callback/CallbackInfo;)V [INJECT Applicator Phase -> controlify.mixins.json:compat.yacl.YACLScreenCategoryTabMixin from mod controlify -> Apply Injections ->  -> Inject -> controlify.mixins.json:compat.yacl.YACLScreenCategoryTabMixin from mod controlify->@Inject::onConstructCategory(Ldev/isxander/yacl3/gui/YACLScreen;Ldev/isxander/yacl3/api/ConfigCategory;Lorg/spongepowered/asm/mixin/injection/callback/CallbackInfo;)V]
    at org.spongepowered.asm.mixin.injection.callback.CallbackInjector.inject(CallbackInjector.java:564)
    at org.spongepowered.asm.mixin.injection.callback.CallbackInjector.inject(CallbackInjector.java:494)
    at org.spongepowered.asm.mixin.injection.code.Injector.inject(Injector.java:277)
    at org.spongepowered.asm.mixin.injection.struct.InjectionInfo.inject(InjectionInfo.java:445)
    at org.spongepowered.asm.mixin.transformer.MixinTargetContext.applyInjections(MixinTargetContext.java:1377)
    at org.spongepowered.asm.mixin.transformer.MixinApplicatorStandard.applyInjections(MixinApplicatorStandard.java:1062)
    at org.spongepowered.asm.mixin.transformer.MixinApplicatorStandard.applyMixin(MixinApplicatorStandard.java:402)
    at org.spongepowered.asm.mixin.transformer.MixinApplicatorStandard.apply(MixinApplicatorStandard.java:327)
    at org.spongepowered.asm.mixin.transformer.TargetClassContext.apply(TargetClassContext.java:422)
    at org.spongepowered.asm.mixin.transformer.TargetClassContext.applyMixins(TargetClassContext.java:403)
    at org.spongepowered.asm.mixin.transformer.MixinProcessor.applyMixins(MixinProcessor.java:363)
    ... 43 more

A detailed walkthrough of the error, its code path and all known details is as follows:
---------------------------------------------------------------------------------------

-- Head --
Thread: Render thread
Stacktrace:
    at net.fabricmc.loader.impl.launch.knot.KnotClassDelegate.getPostMixinClassByteArray(KnotClassDelegate.java:427)
    at net.fabricmc.loader.impl.launch.knot.KnotClassDelegate.tryLoadClass(KnotClassDelegate.java:323)
    at net.fabricmc.loader.impl.launch.knot.KnotClassDelegate.loadClass(KnotClassDelegate.java:218)
    at net.fabricmc.loader.impl.launch.knot.KnotClassLoader.loadClass(KnotClassLoader.java:119)
    at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:525)
    at dev.isxander.yacl3.gui.YACLScreen.lambda$init$4(YACLScreen.java:89)
    at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
    at java.base/java.util.Spliterators$ArraySpliterator.forEachRemaining(Spliterators.java:992)
    at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
    at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499)
    at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:575)
    at java.base/java.util.stream.AbstractPipeline.evaluateToArrayNode(AbstractPipeline.java:260)
    at java.base/java.util.stream.ReferencePipeline.toArray(ReferencePipeline.java:616)
    at java.base/java.util.stream.ReferencePipeline.toArray(ReferencePipeline.java:622)
    at java.base/java.util.stream.ReferencePipeline.toList(ReferencePipeline.java:627)
    at dev.isxander.yacl3.gui.YACLScreen.method_25426(YACLScreen.java:90)
    at net.minecraft.class_437.method_25423(class_437.java:298)
    at net.minecraft.class_310.method_1507(class_310.java:1187)
    at dev.isxander.controlify.gui.screen.ControllerCarouselScreen$CarouselEntry.lambda$new$0(ControllerCarouselScreen.java:241)
    at net.minecraft.class_4185.method_25306(class_4185.java:95)
    at net.minecraft.class_4264.method_25348(class_4264.java:48)
    at net.minecraft.class_339.method_25402(class_339.java:145)
    at net.minecraft.class_4069.method_25402(class_4069.java:38)
    at dev.isxander.controlify.gui.screen.ControllerCarouselScreen$CarouselEntry.method_25402(ControllerCarouselScreen.java:321)
    at net.minecraft.class_4069.method_25402(class_4069.java:38)
    at net.minecraft.class_312.method_1611(class_312.java:99)
    at net.minecraft.class_437.method_25412(class_437.java:414)
    at net.minecraft.class_312.method_1601(class_312.java:99)
    at net.minecraft.class_312.method_22686(class_312.java:180)
    at net.minecraft.class_1255.execute(class_1255.java:102)
    at net.minecraft.class_312.method_22684(class_312.java:180)
    at org.lwjgl.glfw.GLFWMouseButtonCallbackI.callback(GLFWMouseButtonCallbackI.java:43)
    at org.lwjgl.system.JNI.invokeV(Native Method)
    at org.lwjgl.glfw.GLFW.glfwWaitEventsTimeout(GLFW.java:3509)

-- Affected screen --
Details:
    Screen name: dev.isxander.controlify.gui.screen.ControllerCarouselScreen
Stacktrace:
    at net.minecraft.class_437.method_25412(class_437.java:414)
    at net.minecraft.class_312.method_1601(class_312.java:99)
    at net.minecraft.class_312.method_22686(class_312.java:180)
    at net.minecraft.class_1255.execute(class_1255.java:102)
    at net.minecraft.class_312.method_22684(class_312.java:180)
    at org.lwjgl.glfw.GLFWMouseButtonCallbackI.callback(GLFWMouseButtonCallbackI.java:43)
    at org.lwjgl.system.JNI.invokeV(Native Method)
    at org.lwjgl.glfw.GLFW.glfwWaitEventsTimeout(GLFW.java:3509)
    at com.mojang.blaze3d.systems.RenderSystem.limitDisplayFPS(RenderSystem.java:238)
    at net.minecraft.class_310.method_1523(class_310.java:1352)
    at net.minecraft.class_310.method_1514(class_310.java:888)
    at net.minecraft.client.main.Main.main(Main.java:265)
    at net.fabricmc.loader.impl.game.minecraft.MinecraftGameProvider.launch(MinecraftGameProvider.java:470)
    at net.fabricmc.loader.impl.launch.knot.Knot.launch(Knot.java:74)
    at net.fabricmc.loader.impl.launch.knot.KnotClient.main(KnotClient.java:23)

Mod Version

1.3.1 + 1.20

Controller

Xbox Series Controller

Bluetooth

Operating System

Windows

ARM

Additional Information

No response

Just to make sure...