From ba80c7e58054944018612c415d17e7425d5d07e3 Mon Sep 17 00:00:00 2001 From: Aikar Date: Mon, 23 Jul 2018 22:54:52 -0400 Subject: [PATCH] Mark chunk dirty on entity changes This is to hopefully help avoid any chunk saving entity issues. Marks the chunk that it NEEDS to be saved, ensuring the latest state gets saved. --- ...-anytime-entities-change-to-guarante.patch | 30 +++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 Spigot-Server-Patches/0339-Mark-chunk-dirty-anytime-entities-change-to-guarante.patch diff --git a/Spigot-Server-Patches/0339-Mark-chunk-dirty-anytime-entities-change-to-guarante.patch b/Spigot-Server-Patches/0339-Mark-chunk-dirty-anytime-entities-change-to-guarante.patch new file mode 100644 index 000000000..bbf41e099 --- /dev/null +++ b/Spigot-Server-Patches/0339-Mark-chunk-dirty-anytime-entities-change-to-guarante.patch @@ -0,0 +1,30 @@ +From 37c0cfe11574838ad8c24863a4b926e0b88878d5 Mon Sep 17 00:00:00 2001 +From: Aikar +Date: Mon, 23 Jul 2018 22:18:31 -0400 +Subject: [PATCH] Mark chunk dirty anytime entities change to guarantee it + saves + + +diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java +index b31c301ec..6de053781 100644 +--- a/src/main/java/net/minecraft/server/Chunk.java ++++ b/src/main/java/net/minecraft/server/Chunk.java +@@ -683,6 +683,7 @@ public class Chunk { + entity.ad = this.locZ; + this.entitySlices[k].add(entity); + // Paper start ++ this.markDirty(); + entity.setCurrentChunk(this); + entityCounts.increment(entity.entityKeyString); + if (entity instanceof EntityItem) { +@@ -725,6 +726,7 @@ public class Chunk { + + // Paper start + if (!this.entitySlices[i].remove(entity)) { return; } ++ this.markDirty(); + entity.setCurrentChunk(null); + entityCounts.decrement(entity.entityKeyString); + if (entity instanceof EntityItem) { +-- +2.18.0 +