From cc95042a94be1f1af4ff572fdff162b146901281 Mon Sep 17 00:00:00 2001 From: Daniel Mills Date: Sat, 31 Jul 2021 08:18:12 -0400 Subject: [PATCH] Use a synced list --- .../iris/engine/parallax/ParallaxChunkMeta.java | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/volmit/iris/engine/parallax/ParallaxChunkMeta.java b/src/main/java/com/volmit/iris/engine/parallax/ParallaxChunkMeta.java index 5a8b789d8..f7842bcc7 100644 --- a/src/main/java/com/volmit/iris/engine/parallax/ParallaxChunkMeta.java +++ b/src/main/java/com/volmit/iris/engine/parallax/ParallaxChunkMeta.java @@ -22,6 +22,7 @@ import com.google.gson.Gson; import com.volmit.iris.engine.hunk.io.HunkIOAdapter; import com.volmit.iris.engine.hunk.io.PaletteHunkIOAdapter; import com.volmit.iris.engine.object.IrisFeaturePositional; +import com.volmit.iris.util.collection.KList; import com.volmit.iris.util.oldnbt.CompoundTag; import lombok.AllArgsConstructor; import lombok.Data; @@ -29,6 +30,8 @@ import lombok.Data; import java.io.DataInputStream; import java.io.DataOutputStream; import java.io.IOException; +import java.util.Collections; +import java.util.List; import java.util.concurrent.CopyOnWriteArrayList; import java.util.function.Function; @@ -67,7 +70,7 @@ public class ParallaxChunkMeta { pcm.setMaxObject(din.readInt()); pcm.setMinObject(din.readInt()); pcm.setCount(din.readInt()); - pcm.setFeatures(new CopyOnWriteArrayList<>()); + pcm.setFeatures(newList()); int c = din.readInt(); for (int i = 0; i < c; i++) { @@ -87,9 +90,14 @@ public class ParallaxChunkMeta { private int maxObject = -1; private int minObject = -1; private int count; - private CopyOnWriteArrayList features; + private List features; + + private static List newList() + { + return Collections.synchronizedList(new KList<>()); + } public ParallaxChunkMeta() { - this(false, false, false, false, false, false, -1, -1, 0, new CopyOnWriteArrayList<>()); + this(false, false, false, false, false, false, -1, -1, 0, newList()); } }