aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/com
diff options
context:
space:
mode:
authorGlease <4586901+Glease@users.noreply.github.com>2023-03-07 12:12:59 +0800
committerGlease <4586901+Glease@users.noreply.github.com>2023-03-07 12:12:59 +0800
commit907b34642dfea8293a10eb93f37846f0bd73746e (patch)
tree75c5ff0bc4118657a3a57b1a545d81e371d43539 /src/main/java/com
parentf619df41ad277093bc9be47d39947348926c334b (diff)
downloadGT5-Unofficial-907b34642dfea8293a10eb93f37846f0bd73746e.tar.gz
GT5-Unofficial-907b34642dfea8293a10eb93f37846f0bd73746e.tar.bz2
GT5-Unofficial-907b34642dfea8293a10eb93f37846f0bd73746e.zip
fix ChunkDataHandler causing CME at chunk unload
Diffstat (limited to 'src/main/java/com')
-rw-r--r--src/main/java/com/github/technus/tectech/mechanics/data/ChunkDataHandler.java4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/main/java/com/github/technus/tectech/mechanics/data/ChunkDataHandler.java b/src/main/java/com/github/technus/tectech/mechanics/data/ChunkDataHandler.java
index 5a70d35e10..aed20e0b9e 100644
--- a/src/main/java/com/github/technus/tectech/mechanics/data/ChunkDataHandler.java
+++ b/src/main/java/com/github/technus/tectech/mechanics/data/ChunkDataHandler.java
@@ -55,7 +55,9 @@ public class ChunkDataHandler {
event.getData().removeTag(BASE_TAG_NAME);
} else {
chunkData.isLoaded = true;
- event.getData().setTag(BASE_TAG_NAME, chunkData.data);
+ // make a copy of chunk data. this tag will be serialized on another thread. not making a copy might
+ // cause the other thread to encounter CME.
+ event.getData().setTag(BASE_TAG_NAME, chunkData.data.copy());
}
}