diff --git a/src/main/java/club/sk1er/patcher/mixins/performance/forge/InvWrapperMixin_ImproveInsertion.java b/src/main/java/club/sk1er/patcher/mixins/performance/forge/InvWrapperMixin_ImproveInsertion.java index 09a62e63..7dcc0e1b 100644 --- a/src/main/java/club/sk1er/patcher/mixins/performance/forge/InvWrapperMixin_ImproveInsertion.java +++ b/src/main/java/club/sk1er/patcher/mixins/performance/forge/InvWrapperMixin_ImproveInsertion.java @@ -22,7 +22,9 @@ public class InvWrapperMixin_ImproveInsertion { @Inject(method = "insertItem", at = @At(value = "INVOKE", target = "Lnet/minecraftforge/items/ItemHandlerHelper;canItemStacksStack(Lnet/minecraft/item/ItemStack;Lnet/minecraft/item/ItemStack;)Z"), cancellable = true) private void patcher$earlyExit(int slot, ItemStack stack, boolean simulate, CallbackInfoReturnable cir) { + if (this.inv == null) return; ItemStack stackInSlot = this.inv.getStackInSlot(slot); + if (stackInSlot == null) return; if (stackInSlot.stackSize >= Math.min(stackInSlot.getMaxStackSize(), this.inv.getInventoryStackLimit())) { cir.setReturnValue(stack); } diff --git a/src/main/java/club/sk1er/patcher/mixins/performance/forge/SidedInvWrapperMixin_ImproveInsertion.java b/src/main/java/club/sk1er/patcher/mixins/performance/forge/SidedInvWrapperMixin_ImproveInsertion.java index 30635705..a942c14c 100644 --- a/src/main/java/club/sk1er/patcher/mixins/performance/forge/SidedInvWrapperMixin_ImproveInsertion.java +++ b/src/main/java/club/sk1er/patcher/mixins/performance/forge/SidedInvWrapperMixin_ImproveInsertion.java @@ -24,7 +24,9 @@ public class SidedInvWrapperMixin_ImproveInsertion { @Inject(method = "insertItem", at = @At(value = "INVOKE", target = "Lnet/minecraftforge/items/ItemHandlerHelper;canItemStacksStack(Lnet/minecraft/item/ItemStack;Lnet/minecraft/item/ItemStack;)Z", shift = At.Shift.BEFORE), cancellable = true) private void patcher$earlyExit(int slot, ItemStack stack, boolean simulate, CallbackInfoReturnable cir) { + if (this.inv == null) return; ItemStack stackInSlot = this.inv.getStackInSlot(slot); + if (stackInSlot == null) return; if (stackInSlot.stackSize >= Math.min(stackInSlot.getMaxStackSize(), this.inv.getInventoryStackLimit())) { cir.setReturnValue(stack); }