diff --git a/worldedit-bukkit/src/main/java/com/fastasyncworldedit/bukkit/adapter/NMSAdapter.java b/worldedit-bukkit/src/main/java/com/fastasyncworldedit/bukkit/adapter/NMSAdapter.java index 52035aa697..376fa600d0 100644 --- a/worldedit-bukkit/src/main/java/com/fastasyncworldedit/bukkit/adapter/NMSAdapter.java +++ b/worldedit-bukkit/src/main/java/com/fastasyncworldedit/bukkit/adapter/NMSAdapter.java @@ -2,6 +2,7 @@ import com.fastasyncworldedit.bukkit.FaweBukkitWorld; import com.fastasyncworldedit.core.FAWEPlatformAdapterImpl; +import com.fastasyncworldedit.core.Fawe; import com.fastasyncworldedit.core.math.IntPair; import com.fastasyncworldedit.core.queue.IChunkGet; import com.fastasyncworldedit.core.util.MathMan; @@ -124,6 +125,9 @@ protected static boolean setSectionAtomic( if (layer < 0 || layer >= sections.length) { return false; } + if (Fawe.isMainThread()) { + return ReflectionUtils.compareAndSet(sections, expected, value, layer); + } StampLockHolder holder = new StampLockHolder(); ConcurrentHashMap chunks = FaweBukkitWorld.getWorldSendingChunksMap(worldName); chunks.compute(pair, (k, lock) -> {