diff --git a/src/main/java/appeng/parts/misc/ItemHandlerAdapter.java b/src/main/java/appeng/parts/misc/ItemHandlerAdapter.java index ebc840af9..94332ccd8 100644 --- a/src/main/java/appeng/parts/misc/ItemHandlerAdapter.java +++ b/src/main/java/appeng/parts/misc/ItemHandlerAdapter.java @@ -134,6 +134,14 @@ class ItemHandlerAdapter implements IMEInventory, IBaseMonitor remainingCurrentSlot ) { // Something broke. It should never return more than we requested... @@ -143,12 +151,17 @@ class ItemHandlerAdapter implements IMEInventory, IBaseMonitor extracted.getMaxStackSize()) { + extracted.setCount(remainingCurrentSlot); + } + if( gathered.isEmpty() ) { - gathered = extracted.copy(); + gathered = extracted; } else { @@ -157,7 +170,7 @@ class ItemHandlerAdapter implements IMEInventory, IBaseMonitor 0 ); + while( !simulate && !extracted.isEmpty() && remainingCurrentSlot > 0 ); remainingSize -= stackSizeCurrentSlot - remainingCurrentSlot;