[Bug]: Crash when editing "defineInList" config value in "Configured" integration UI
zomabies opened this issue ยท 1 comments
Mod Loader (Required)
Fabric
Minecraft Version (Required)
1.19.2
Mod Version (Required)
4.2.9
Notes (Required)
When using the "Configured" UI to modify defineInList
config value, it crashes the client with a null exception.
Description: keyPressed event handler
java.lang.NullPointerException: keyPressed event handler
at java.base/java.util.Objects.requireNonNull(Unknown Source)
at java.base/java.util.Optional.of(Unknown Source)
at net.minecraftforge.configured.ReflectionHelper.get(ReflectionHelper.java:72)
at net.minecraftforge.configured.ForgeValue.loadRange(ForgeValue.java:179)
at net.minecraftforge.configured.ForgeValue.getValidationHint(ForgeValue.java:118)
at com.mrcrayfish.configured.client.screen.ConfigScreen$StringItem.lambda$new$0(ConfigScreen.java:637)
at com.mrcrayfish.configured.client.screen.EditStringScreen.updateValidation(EditStringScreen.java:77)
at com.mrcrayfish.configured.client.screen.EditStringScreen.lambda$init$0(EditStringScreen.java:55)
at net.minecraft.class_342.method_1874(class_342.java:151)
at net.minecraft.class_342.method_1883(class_342.java:257)
at net.minecraft.class_342.method_1878(class_342.java:201)
at net.minecraft.class_342.method_16873(class_342.java:159)
at net.minecraft.class_342.method_25404(class_342.java:320)
at net.minecraft.class_4069.method_25404(class_4069.java:65)
at net.minecraft.class_437.method_25404(class_437.java:124)
at net.minecraft.class_309.method_1454(class_309.java:374)
at net.minecraft.class_437.method_25412(class_437.java:489)
at net.minecraft.class_309.method_1466(class_309.java:370)
at net.minecraft.class_309.method_22678(class_309.java:462)
at net.minecraft.class_1255.execute(class_1255.java:103)
at net.minecraft.class_309.method_22676(class_309.java:462)
at org.lwjgl.glfw.GLFWKeyCallbackI.callback(GLFWKeyCallbackI.java:44)
at org.lwjgl.system.JNI.invokeV(Native Method)
at org.lwjgl.glfw.GLFW.glfwPollEvents(GLFW.java:3403)
at com.mojang.blaze3d.systems.RenderSystem.flipFrame(RenderSystem.java:197)
Code for reproduction
ForgeConfigSpec.ConfigValue<String> value;
List<String> selection = List.of("1", "2", "3");
value = builder
.comment("Test selection", "Valid value: ", String.join(", ", selection))
.defineInList("choice", "2", selection);
Cause
On line 179 in ForgeValue
, ReflectionHelper#get
calls Optional#of
instead of Optional#ofNullable
.
1.20 branch might be affected
latest.log (Optional)
No response