LoliKingdom / LoliASM

The lolis are now preparing to bytecode manipulate your game.
GNU Lesser General Public License v2.1
104 stars 22 forks source link

ver 5.6 array index out of bounds exception on server #185

Closed DubDub2011 closed 10 months ago

DubDub2011 commented 1 year ago

Version: loliasm-5.6

Reporting for a friend, don't have full access to logs and issue has been resolved after reinstalling, but thought I'd log an issue in case it can be found and fixed.

Game crashed while playing on a multiplayer server. Retried joining the server, while joining game crashed with the same issue. After reinstalling the pack (1.12.2 pack), the issue was resolved.

java.lang.ArrayIndexOutOfBoundsException: 1
    at java.util.ArrayList.clear(ArrayList.java:558)
    at zone.rong.loliasm.client.sprite.FramesTextureData.clear(FramesTextureData.java:74)
    at net.minecraft.client.renderer.texture.TextureAtlasSprite.clearFramesTextureData(TextureAtlasSprite.java:374)
    at pl.asie.foamfix.client.FastTextureAtlasSprite.clearFramesTextureData(FastTextureAtlasSprite.java:249)
    at zone.rong.loliasm.client.sprite.FramesTextureData.onClientTick(FramesTextureData.java:28)
    at net.minecraftforge.fml.common.eventhandler.ASMEventHandler_2642_FramesTextureData_onClientTick_ClientTickEvent.invoke(.dynamic)
    at net.minecraftforge.fml.common.eventhandler.ASMEventHandler.invoke(ASMEventHandler.java:90)
    at net.minecraftforge.fml.common.eventhandler.EventBus.post(EventBus.java:182)
    at net.minecraftforge.fml.common.FMLCommonHandler.onPostClientTick(FMLCommonHandler.java:349)
    at net.minecraft.client.Minecraft.runTick(Minecraft.java:1911)
    at net.minecraft.client.Minecraft.runGameLoop(Minecraft.java:1098)
    at net.minecraft.client.Minecraft.run(Minecraft.java:7114)
    at net.minecraft.client.main.Main.main(SourceFile:123)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:497)
    at net.minecraft.launchwrapper.Launch.launch(Launch.java:135)
    at net.minecraft.launchwrapper.Launch.main(Launch.java:28)

I've got a bit of programming experience and I found it surprising it was the library method chucking the exception. I've had a quick look, and looks like this might be related to the issue: https://stackoverflow.com/a/69280975/9822528

If the issue isn't obvious I'd recommend just closing this issue.

embeddedt commented 1 year ago

This is most likely already solved in 5.14; I rewrote a chunk of FramesTextureData a while back because of the concurrency problems.