From ff7d6d2daeb42e559841f2916d2abc9e7d429ec4 Mon Sep 17 00:00:00 2001 From: lineagedr Date: Fri, 20 Aug 2021 01:01:48 +0300 Subject: [PATCH] fix(Core/Maps): prevet a crash occurring when shutting the server down. (#7387) --- src/server/game/Maps/MapUpdater.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/server/game/Maps/MapUpdater.cpp b/src/server/game/Maps/MapUpdater.cpp index 0f5b273cf..c7628df0b 100644 --- a/src/server/game/Maps/MapUpdater.cpp +++ b/src/server/game/Maps/MapUpdater.cpp @@ -67,6 +67,7 @@ MapUpdater::~MapUpdater() void MapUpdater::activate(size_t num_threads) { + _workerThreads.reserve(num_threads); for (size_t i = 0; i < num_threads; ++i) { _workerThreads.push_back(std::thread(&MapUpdater::WorkerThread, this)); @@ -83,7 +84,10 @@ void MapUpdater::deactivate() for (auto& thread : _workerThreads) { - thread.join(); + if (thread.joinable()) + { + thread.join(); + } } }