diff --git a/CHANGELOG.md b/CHANGELOG.md index ed71b807d..50403ae24 100755 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,7 @@ ### 1.6.9 - Fixed OpenComputers "unknown error" when using extract item API (raoulvdberge) - Fixed client FPS stuttering when opening a Crafting Grid (raoulvdberge) +- Fixed rare Grid crashing issue (raoulvdberge) ### 1.6.8 - Fixed Ender IO incompatibility (raoulvdberge) diff --git a/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/grid/handler/ItemGridHandler.java b/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/grid/handler/ItemGridHandler.java index 89f428e66..94bd6b50d 100644 --- a/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/grid/handler/ItemGridHandler.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/grid/handler/ItemGridHandler.java @@ -90,18 +90,22 @@ public class ItemGridHandler implements IItemGridHandler { if (ItemHandlerHelper.insertItem(playerInventory, took, true).isEmpty()) { took = network.extractItem(item, size, Action.PERFORM); - ItemHandlerHelper.insertItem(playerInventory, took, false); + if (took != null) { + ItemHandlerHelper.insertItem(playerInventory, took, false); + } } } else { took = network.extractItem(item, size, Action.PERFORM); - if (single && !held.isEmpty()) { - held.grow(1); - } else { - player.inventory.setItemStack(took); - } + if (took != null) { + if (single && !held.isEmpty()) { + held.grow(1); + } else { + player.inventory.setItemStack(took); + } - player.updateHeldItem(); + player.updateHeldItem(); + } } INetworkItem networkItem = network.getNetworkItemHandler().getItem(player);