From 6430c868c779b5dfab4d82875959a0b3f4885d28 Mon Sep 17 00:00:00 2001 From: Nate Mortensen Date: Sat, 19 Oct 2013 18:14:20 -0600 Subject: [PATCH] Remove redundant call to worldMaps.a(). Addresses BUKKIT-4828 The WorldMapCollection object for SecondaryWorldServers(Nether, End) is shared with the main world, so saving it again for each SecondaryWorldServer is redundant. This commit removes the redundant call by checking if the WorldServer is an instanceof SecondaryWorldServer before invoking worldMaps.a(). --- src/main/java/net/minecraft/server/WorldServer.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java index acc1eff81b..73c1ac73ae 100644 --- a/src/main/java/net/minecraft/server/WorldServer.java +++ b/src/main/java/net/minecraft/server/WorldServer.java @@ -779,7 +779,11 @@ public class WorldServer extends World implements org.bukkit.BlockChangeDelegate protected void a() throws ExceptionWorldConflict { // CraftBukkit - added throws this.G(); this.dataManager.saveWorldData(this.worldData, this.server.getPlayerList().q()); - this.worldMaps.a(); + // CraftBukkit start - save worldMaps once, rather than once per shared world + if (!(this instanceof SecondaryWorldServer)) { + this.worldMaps.a(); + } + // CraftBukkit end } protected void a(Entity entity) {