aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2020-06-22 09:53:10 +0200
committerShauren <shauren.trinity@gmail.com>2022-01-06 23:35:09 +0100
commitc776218cb5b0cc8f9f6d4d509cf6c36212eb38aa (patch)
treea77d3fd558c76945651fcfe80d0576d0a5546836
parent962a2ac703a15b958f4e2c706a2ca89d0c823298 (diff)
Core/Misc: Properly close database connections when using --update-databases-only arg
(cherry picked from commit a9f9f737b2c93d8f9fcb435f7a2b164a84cbc684)
-rw-r--r--src/server/bnetserver/Main.cpp4
-rw-r--r--src/server/worldserver/Main.cpp4
2 files changed, 4 insertions, 4 deletions
diff --git a/src/server/bnetserver/Main.cpp b/src/server/bnetserver/Main.cpp
index 5b3081c5a2d..ad336565fbc 100644
--- a/src/server/bnetserver/Main.cpp
+++ b/src/server/bnetserver/Main.cpp
@@ -157,6 +157,8 @@ int main(int argc, char** argv)
if (!StartDB())
return 1;
+ std::shared_ptr<void> dbHandle(nullptr, [](void*) { StopDB(); });
+
if (vm.count("update-databases-only"))
return 0;
@@ -167,8 +169,6 @@ int main(int argc, char** argv)
// Load IP Location Database
sIPLocation->Load();
- std::shared_ptr<void> dbHandle(nullptr, [](void*) { StopDB(); });
-
std::shared_ptr<Trinity::Asio::IoContext> ioContext = std::make_shared<Trinity::Asio::IoContext>();
// Start the listening port (acceptor) for auth connections
diff --git a/src/server/worldserver/Main.cpp b/src/server/worldserver/Main.cpp
index 5c596e5c99d..e53d2741b18 100644
--- a/src/server/worldserver/Main.cpp
+++ b/src/server/worldserver/Main.cpp
@@ -264,11 +264,11 @@ extern int main(int argc, char** argv)
if (!StartDB())
return 1;
+ std::shared_ptr<void> dbHandle(nullptr, [](void*) { StopDB(); });
+
if (vm.count("update-databases-only"))
return 0;
- std::shared_ptr<void> dbHandle(nullptr, [](void*) { StopDB(); });
-
// Set server offline (not connectable)
LoginDatabase.DirectPExecute("UPDATE realmlist SET flag = flag | %u WHERE id = '%d'", REALM_FLAG_OFFLINE, realm.Id.Realm);