From 6e7471eaab5e9761a63e45a5b72b0bee9bf6bad5 Mon Sep 17 00:00:00 2001 From: raoulvdberge Date: Mon, 13 Nov 2017 22:50:38 +0100 Subject: [PATCH] Fixed Fluid Interface with Stack Upgrade not exporting liquids, fixes #1536 --- CHANGELOG.md | 1 + .../apiimpl/network/node/NetworkNodeFluidInterface.java | 8 ++++++++ 2 files changed, 9 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 191ef9ec2..7e79bf1c6 100755 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,7 @@ ### 1.5.23 - Fixed duplication bug with autocrafting (raoulvdberge) +- Fixed Fluid Interface with Stack Upgrade not exporting liquids (raoulvdberge) ### 1.5.22 - Added oredict, blocking, processing, ore inputs access to OpenComputers API (raoulvdberge) diff --git a/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeFluidInterface.java b/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeFluidInterface.java index 93d79a10a..1ae80ff46 100755 --- a/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeFluidInterface.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/node/NetworkNodeFluidInterface.java @@ -120,6 +120,14 @@ public class NetworkNodeFluidInterface extends NetworkNode implements IComparabl if (stackInStorage != null) { int toExtract = Math.min(Fluid.BUCKET_VOLUME * upgrades.getItemInteractCount(), stackInStorage.amount); + int spaceRemaining = tankOut.getCapacity() - tankOut.getFluidAmount(); + if (toExtract > spaceRemaining) { + toExtract = spaceRemaining; + } + if (toExtract <= 0) { + return; + } + FluidStack took = network.extractFluid(stack, toExtract, compare, true); if (took != null && (toExtract - tankOut.fillInternal(took, false)) == 0) {