aboutsummaryrefslogtreecommitdiff
path: root/src/server/worldserver/Main.cpp
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2014-07-28 23:32:53 +0200
committerShauren <shauren.trinity@gmail.com>2014-07-28 23:32:53 +0200
commit86f3ee99493613700cfa166361336821eaf79793 (patch)
tree960557f0a7860a6e64efec5beb24d9297451e1c9 /src/server/worldserver/Main.cpp
parent050ef80f6b1b0fce14ea3d52628f4d3415109dd0 (diff)
Core/Instances: Explicitly unload InstanceSaveMgr before MapManager, fixes invalid memory access at shutdown
Closes #12635
Diffstat (limited to 'src/server/worldserver/Main.cpp')
-rw-r--r--src/server/worldserver/Main.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/server/worldserver/Main.cpp b/src/server/worldserver/Main.cpp
index 206103608a4..02e6268cd26 100644
--- a/src/server/worldserver/Main.cpp
+++ b/src/server/worldserver/Main.cpp
@@ -37,6 +37,7 @@
#include "RealmList.h"
#include "World.h"
#include "MapManager.h"
+#include "InstanceSaveMgr.h"
#include "ObjectAccessor.h"
#include "ScriptMgr.h"
#include "OutdoorPvP/OutdoorPvPMgr.h"
@@ -251,6 +252,7 @@ extern int main(int argc, char** argv)
// unload battleground templates before different singletons destroyed
sBattlegroundMgr->DeleteAllBattlegrounds();
+ sInstanceSaveMgr->Unload();
sMapMgr->UnloadAll(); // unload all grids (including locked in memory)
sObjectAccessor->UnloadAll(); // unload 'i_player2corpse' storage and remove from world
sScriptMgr->Unload();
@@ -537,7 +539,7 @@ variables_map GetConsoleArguments(int argc, char** argv, std::string& configFile
{
// Silences warning about configService not be used if the OS is not Windows
(void)configService;
-
+
options_description all("Allowed options");
all.add_options()
("help,h", "print usage message")