From 48be6ac94bb559d563eab6f2e5b92b807f2e089e Mon Sep 17 00:00:00 2001 From: dordsor21 Date: Sat, 22 Jul 2023 17:44:05 +0100 Subject: [PATCH] fix: processorExtent can be null when setting masks too - fixes #2379 --- .../src/main/java/com/sk89q/worldedit/EditSession.java | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/worldedit-core/src/main/java/com/sk89q/worldedit/EditSession.java b/worldedit-core/src/main/java/com/sk89q/worldedit/EditSession.java index 983292ca5..ecf859896 100644 --- a/worldedit-core/src/main/java/com/sk89q/worldedit/EditSession.java +++ b/worldedit-core/src/main/java/com/sk89q/worldedit/EditSession.java @@ -631,10 +631,12 @@ public class EditSession extends PassthroughExtent implements AutoCloseable { } MaskingExtent maskingExtent = new ExtentTraverser<>(getExtent()).findAndGet(MaskingExtent.class); if (maskingExtent == null && mask != Masks.alwaysTrue()) { - ExtentTraverser processorExtent = - new ExtentTraverser<>(getExtent()).find(ExtentBatchProcessorHolder.class); - maskingExtent = - new ProcessorTraverser<>(processorExtent.get().getProcessor()).find(MaskingExtent.class); + ExtentBatchProcessorHolder processorExtent = + new ExtentTraverser<>(getExtent()).findAndGet(ExtentBatchProcessorHolder.class); + if (processorExtent != null) { + maskingExtent = + new ProcessorTraverser<>(processorExtent.getProcessor()).find(MaskingExtent.class); + } } if (maskingExtent != null) { Mask oldMask = maskingExtent.getMask();