From b91e2abdedb1f6725ba4db38da8d0c014dbcab4c Mon Sep 17 00:00:00 2001 From: Jeremiah Winsley Date: Sat, 12 Jun 2021 11:12:23 -0400 Subject: [PATCH] fix npe in external storage when IFluidHandler goes away (#2944) --- .../storage/externalstorage/FluidExternalStorage.java | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/refinedmods/refinedstorage/apiimpl/storage/externalstorage/FluidExternalStorage.java b/src/main/java/com/refinedmods/refinedstorage/apiimpl/storage/externalstorage/FluidExternalStorage.java index 066d5d5bd..ea40e6ca3 100644 --- a/src/main/java/com/refinedmods/refinedstorage/apiimpl/storage/externalstorage/FluidExternalStorage.java +++ b/src/main/java/com/refinedmods/refinedstorage/apiimpl/storage/externalstorage/FluidExternalStorage.java @@ -83,8 +83,11 @@ public class FluidExternalStorage implements IExternalStorage { return stack; } - if (context.acceptsFluid(stack)) { - int filled = handlerSupplier.get().fill(StackUtils.copy(stack, size), action == Action.PERFORM ? IFluidHandler.FluidAction.EXECUTE : IFluidHandler.FluidAction.SIMULATE); + IFluidHandler handler = handlerSupplier.get(); + + if (context.acceptsFluid(stack) && handler != null) { + + int filled = handler.fill(StackUtils.copy(stack, size), action == Action.PERFORM ? IFluidHandler.FluidAction.EXECUTE : IFluidHandler.FluidAction.SIMULATE); if (filled == size) { return FluidStack.EMPTY;