refinedmods/refinedstorage2

[Fabric] Index Out of Bounds Exception while rendering screen

Closed this issue · 3 comments

Describe the bug

Exception gets thrown after clicking the search bar and looking for any item. Occassionally also while having an item selected and clicking the search bar.

Tried this with and without shaders, rendering issues unrelated.

On Fabric 1.20.1 with the release for said version (listed below).

Full modlist:
modlist.txt

How can we reproduce this bug or crash?

  1. Open crafting terminal
  2. 50/50 of it happening when clicking on the search bar without item or with
  3. Look for any item within the system (I tested it trying to craft quartz enriched iron, head iron on my cursor and looked for nether quartz in the system)

What Minecraft version is this happening on?

Minecraft 1.20.1

What NeoForge or Fabric version is this happening on?

fabric-loader-0.14.25.-1.20.1

What Refined Storage version is this happening on?

refinedstorage2-platform-fabric-2.0.0-milestone.3.0

Relevant log output

## Stacktrace after the initial report

Description: Rendering screen

java.lang.IndexOutOfBoundsException: Index 2 out of bounds for length 2
	at java.base@17.0.8/jdk.internal.util.Preconditions.outOfBounds(Preconditions.java:64)
	at java.base@17.0.8/jdk.internal.util.Preconditions.outOfBoundsCheckIndex(Preconditions.java:70)
	at java.base@17.0.8/jdk.internal.util.Preconditions.checkIndex(Preconditions.java:266)
	at java.base@17.0.8/java.util.Objects.checkIndex(Objects.java:361)
	at java.base@17.0.8/java.util.ArrayList.get(ArrayList.java:427)
	at com.anthonyhilyard.iceberg.util.Tooltips.centerTitle(Tooltips.java:531)
	at MC//net.minecraft.client.gui.DrawContext.handler$hpe000$legendarytooltips$centerTitle(DrawContext.java:16308)
	at MC//net.minecraft.client.gui.DrawContext.drawTooltip(DrawContext.java:626)
	at com.refinedmods.refinedstorage2.platform.fabric.PlatformImpl.renderTooltip(PlatformImpl.java:384)
	at com.refinedmods.refinedstorage2.platform.common.PlatformProxy.renderTooltip(PlatformProxy.java:240)
	at com.refinedmods.refinedstorage2.platform.common.screen.grid.AbstractGridScreen.renderOverStorageAreaTooltip(AbstractGridScreen.java:355)
	at com.refinedmods.refinedstorage2.platform.common.screen.grid.AbstractGridScreen.drawMouseoverTooltip(AbstractGridScreen.java:341)
	at com.refinedmods.refinedstorage2.platform.common.screen.AbstractBaseScreen.render(AbstractBaseScreen.java:88)
	at com.refinedmods.refinedstorage2.platform.common.screen.grid.AbstractGridScreen.render(AbstractGridScreen.java:440)
	at MC//net.minecraft.client.gui.screen.Screen.renderWithTooltip(Screen.java:110)
	at MC//net.minecraft.client.render.GameRenderer.render(GameRenderer.java:945)
	at MC//net.minecraft.client.MinecraftClient.render(MinecraftClient.java:1219)
	at MC//net.minecraft.client.MinecraftClient.run(MinecraftClient.java:802)
	at net.minecraft.client.main.Main.main(Main.java:250)
	at app//net.fabricmc.loader.impl.game.minecraft.MinecraftGameProvider.launch(MinecraftGameProvider.java:470)
	at app//net.fabricmc.loader.impl.launch.knot.Knot.launch(Knot.java:74)
	at app//net.fabricmc.loader.impl.launch.knot.KnotClient.main(KnotClient.java:23)

################
## Stacktrace ##
################

-- Head --
Thread: Render thread
Stacktrace:
	at java.base@17.0.8/jdk.internal.util.Preconditions.outOfBounds(Preconditions.java:64)
	at java.base@17.0.8/jdk.internal.util.Preconditions.outOfBoundsCheckIndex(Preconditions.java:70)
	at java.base@17.0.8/jdk.internal.util.Preconditions.checkIndex(Preconditions.java:266)
	at java.base@17.0.8/java.util.Objects.checkIndex(Objects.java:361)
	at java.base@17.0.8/java.util.ArrayList.get(ArrayList.java:427)
	at com.anthonyhilyard.iceberg.util.Tooltips.centerTitle(Tooltips.java:531)
	at MC//net.minecraft.client.gui.DrawContext.handler$hpe000$legendarytooltips$centerTitle(DrawContext.java:16308)
	at MC//net.minecraft.client.gui.DrawContext.drawTooltip(DrawContext.java:626)
	at com.refinedmods.refinedstorage2.platform.fabric.PlatformImpl.renderTooltip(PlatformImpl.java:384)
	at com.refinedmods.refinedstorage2.platform.common.PlatformProxy.renderTooltip(PlatformProxy.java:240)
	at com.refinedmods.refinedstorage2.platform.common.screen.grid.AbstractGridScreen.renderOverStorageAreaTooltip(AbstractGridScreen.java:355)
	at com.refinedmods.refinedstorage2.platform.common.screen.grid.AbstractGridScreen.drawMouseoverTooltip(AbstractGridScreen.java:341)
	at com.refinedmods.refinedstorage2.platform.common.screen.AbstractBaseScreen.render(AbstractBaseScreen.java:88)
	at com.refinedmods.refinedstorage2.platform.common.screen.grid.AbstractGridScreen.render(AbstractGridScreen.java:440)
	at MC//net.minecraft.client.gui.screen.Screen.renderWithTooltip(Screen.java:110)
Mixins in Stacktrace: None found

-- Screen render details --
Details:
	Screen name: com.refinedmods.refinedstorage2.platform.common.screen.grid.CraftingGridScreen
	Mouse location: Scaled: (364, 209). Absolute: (1092.000000, 627.000000)
	Screen size: Scaled: (833, 473). Absolute: (2498, 1417). Scale factor of 3.000000
Stacktrace:
	at MC//net.minecraft.client.render.GameRenderer.render(GameRenderer.java:945)
	at MC//net.minecraft.client.MinecraftClient.render(MinecraftClient.java:1219)
	at MC//net.minecraft.client.MinecraftClient.run(MinecraftClient.java:802)
	at net.minecraft.client.main.Main.main(Main.java:250)
	at app//net.fabricmc.loader.impl.game.minecraft.MinecraftGameProvider.launch(MinecraftGameProvider.java:470)
	at app//net.fabricmc.loader.impl.launch.knot.Knot.launch(Knot.java:74)
	at app//net.fabricmc.loader.impl.launch.knot.KnotClient.main(KnotClient.java:23)
Mixins in Stacktrace:
	net.minecraft.client.main.Main:
		com.jozufozu.flywheel.mixin.ClientMainMixin (flywheel.mixins.json)
		org.vivecraft.mixin.client.main.MainMixin (vivecraft.mixins.json)

Update: also happens on version refinedstorage2-platform-fabric-2.0.0-milestone.3.2. Just tested it.

Also happens if you grab an item from the system and hover over any other item in the system with it. Same Index Out Of Bounds exception.

Not an RS issue: #463