diff --git a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/adapter/mc1_15_2/BukkitGetBlocks_1_15_2.java b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/adapter/mc1_15_2/BukkitGetBlocks_1_15_2.java index 172cd38e4..991b27f4f 100644 --- a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/adapter/mc1_15_2/BukkitGetBlocks_1_15_2.java +++ b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/adapter/mc1_15_2/BukkitGetBlocks_1_15_2.java @@ -816,17 +816,12 @@ public class BukkitGetBlocks_1_15_2 extends CharGetBlocks implements BukkitGetBl } public ChunkSection[] getSections(boolean force) { - if (force && forceLoadSections) { - ChunkSection[] sections = getChunk().getSections(); - ChunkSection[] copy = new ChunkSection[sections.length]; - System.arraycopy(sections, 0, copy, 0, sections.length); - return copy; - } + force &= forceLoadSections; ChunkSection[] tmp = sections; - if (tmp == null) { + if (tmp == null || force) { synchronized (this) { tmp = sections; - if (tmp == null) { + if (tmp == null || force) { ChunkSection[] chunkSections = getChunk().getSections(); tmp = new ChunkSection[chunkSections.length]; System.arraycopy(chunkSections, 0, tmp, 0, chunkSections.length); diff --git a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/adapter/mc1_16_1/BukkitGetBlocks_1_16_1.java b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/adapter/mc1_16_1/BukkitGetBlocks_1_16_1.java index 7a8cd131d..3c537bc0f 100644 --- a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/adapter/mc1_16_1/BukkitGetBlocks_1_16_1.java +++ b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/adapter/mc1_16_1/BukkitGetBlocks_1_16_1.java @@ -817,17 +817,12 @@ public class BukkitGetBlocks_1_16_1 extends CharGetBlocks implements BukkitGetBl } public ChunkSection[] getSections(boolean force) { - if (force && forceLoadSections) { - ChunkSection[] sections = getChunk().getSections(); - ChunkSection[] copy = new ChunkSection[sections.length]; - System.arraycopy(sections, 0, copy, 0, sections.length); - return copy; - } + force &= forceLoadSections; ChunkSection[] tmp = sections; - if (tmp == null) { + if (tmp == null || force) { synchronized (this) { tmp = sections; - if (tmp == null) { + if (tmp == null || force) { ChunkSection[] chunkSections = getChunk().getSections(); tmp = new ChunkSection[chunkSections.length]; System.arraycopy(chunkSections, 0, tmp, 0, chunkSections.length); diff --git a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/adapter/mc1_16_2/BukkitGetBlocks_1_16_2.java b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/adapter/mc1_16_2/BukkitGetBlocks_1_16_2.java index c14b87dbd..4e502e3a4 100644 --- a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/adapter/mc1_16_2/BukkitGetBlocks_1_16_2.java +++ b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/adapter/mc1_16_2/BukkitGetBlocks_1_16_2.java @@ -820,17 +820,12 @@ public class BukkitGetBlocks_1_16_2 extends CharGetBlocks implements BukkitGetBl } public ChunkSection[] getSections(boolean force) { - if (force && forceLoadSections) { - ChunkSection[] sections = getChunk().getSections(); - ChunkSection[] copy = new ChunkSection[sections.length]; - System.arraycopy(sections, 0, copy, 0, sections.length); - return copy; - } + force &= forceLoadSections; ChunkSection[] tmp = sections; - if (tmp == null) { + if (tmp == null || force) { synchronized (this) { tmp = sections; - if (tmp == null) { + if (tmp == null || force) { ChunkSection[] chunkSections = getChunk().getSections(); tmp = new ChunkSection[chunkSections.length]; System.arraycopy(chunkSections, 0, tmp, 0, chunkSections.length); diff --git a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/adapter/mc1_16_5/BukkitGetBlocks_1_16_5.java b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/adapter/mc1_16_5/BukkitGetBlocks_1_16_5.java index 0445ca405..1e4e2dc7b 100644 --- a/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/adapter/mc1_16_5/BukkitGetBlocks_1_16_5.java +++ b/worldedit-bukkit/src/main/java/com/boydti/fawe/bukkit/adapter/mc1_16_5/BukkitGetBlocks_1_16_5.java @@ -820,17 +820,12 @@ public class BukkitGetBlocks_1_16_5 extends CharGetBlocks implements BukkitGetBl } public ChunkSection[] getSections(boolean force) { - if (force && forceLoadSections) { - ChunkSection[] sections = getChunk().getSections(); - ChunkSection[] copy = new ChunkSection[sections.length]; - System.arraycopy(sections, 0, copy, 0, sections.length); - return copy; - } + force &= forceLoadSections; ChunkSection[] tmp = sections; - if (tmp == null) { + if (tmp == null || force) { synchronized (this) { tmp = sections; - if (tmp == null) { + if (tmp == null || force) { ChunkSection[] chunkSections = getChunk().getSections(); tmp = new ChunkSection[chunkSections.length]; System.arraycopy(chunkSections, 0, tmp, 0, chunkSections.length);