CharsetMC / Charset

The Charset Project for Minecraft.
http://charset.asie.pl/
62 stars 30 forks source link

[Charset Crafting - Pocket Crafting Table] Crash when shift-clicking to craft stack(s) of sticks with sticks in inventory #459

Closed JLenander closed 2 years ago

JLenander commented 2 years ago

On Forge 1.12.2 v14.23.5.2859 With Charset Crafting v0.5.6.0 With Charset Lib v0.5.6.6 No other mods

Reproducible crash when shift clicking to craft 1+ stacks of sticks with 1-63 sticks already in the inventory. No errors produced in logs.

https://user-images.githubusercontent.com/52386328/183232881-24d6e409-f32e-459a-b86f-7a14e5bcb119.mp4

Aravenqueen commented 2 years ago

It also crashes if you right click an item to move an item to an empty space from the crafting grid

xJon commented 2 years ago

@Aravenqueen Not sure what that means or unable to reproduce, I can reproduce the stick issue though

ACGaming commented 2 years ago

I was able to dump the thread while it was freezing:

"Client thread@1" prio=5 tid=0x1 nid=NA runnable
  java.lang.Thread.State: RUNNABLE
      at java.util.AbstractList$Itr.hasNext(AbstractList.java:351)
      at net.minecraft.entity.player.InventoryPlayer.getStackInSlot(InventoryPlayer.java:764)
      at net.minecraft.inventory.Slot.getStack(Slot.java:81)
      at net.minecraft.inventory.Container.detectAndSendChanges(Container.java:97)
      at pl.asie.charset.module.crafting.pocket.ContainerPocketTable.detectAndSendChanges(ContainerPocketTable.java:219)
      at net.minecraft.inventory.Container.onCraftMatrixChanged(Container.java:549)
      at pl.asie.charset.module.crafting.pocket.ContainerPocketTable.onCraftMatrixChanged(ContainerPocketTable.java:213)
      at net.minecraft.inventory.InventoryCrafting.setInventorySlotContents(InventoryCrafting.java:180)
      at pl.asie.charset.lib.material.FastRecipeLookup.findMatchingRecipe(FastRecipeLookup.java:387)
      at pl.asie.charset.module.crafting.pocket.ContainerPocketTable.updateCraft(ContainerPocketTable.java:123)
      at pl.asie.charset.module.crafting.pocket.ContainerPocketTable.transferStackInSlot(ContainerPocketTable.java:258)
      at net.minecraft.inventory.Container.slotClick(Container.java:271)
      at net.minecraft.client.multiplayer.PlayerControllerMP.windowClick(PlayerControllerMP.java:610)
      at net.minecraft.client.gui.inventory.GuiContainer.handleMouseClick(GuiContainer.java:693)
      at net.minecraft.client.gui.inventory.GuiContainer.mouseClicked(GuiContainer.java:430)
      at pl.asie.charset.module.crafting.pocket.GuiPocketTable.mouseClicked(GuiPocketTable.java:64)