From 8d515afce233da7aeb296a3088c0b306e136365e Mon Sep 17 00:00:00 2001 From: Shaun Date: Sun, 1 May 2022 19:56:08 +0200 Subject: [PATCH] bug #1915: Fixed an issue causing threads to not be destroyed when rezoning from instanced threads (cherry picked from commit ce046d40e59645b90750f676986c2436b53c1f42) --- src/server/world/atlas.js | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/server/world/atlas.js b/src/server/world/atlas.js index 9d3cb62c..869353b4 100644 --- a/src/server/world/atlas.js +++ b/src/server/world/atlas.js @@ -264,6 +264,11 @@ module.exports = { rezone: async function (thread, message) { const { args: { obj, newZone, keepPos = true } } = message; + if (thread.instanced) { + thread.worker.kill(); + this.threads.spliceWhere(t => t === thread); + } + //When messages are sent from map threads, they have an id (id of the object in the map thread) // as well as a serverId (id of the object in the main thread) const serverId = obj.serverId;