aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Warden/WardenCheckMgr.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/server/game/Warden/WardenCheckMgr.cpp')
-rw-r--r--src/server/game/Warden/WardenCheckMgr.cpp11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/server/game/Warden/WardenCheckMgr.cpp b/src/server/game/Warden/WardenCheckMgr.cpp
index bd0746ea207..ca40cc22d08 100644
--- a/src/server/game/Warden/WardenCheckMgr.cpp
+++ b/src/server/game/Warden/WardenCheckMgr.cpp
@@ -23,8 +23,13 @@
#include "Database/DatabaseEnv.h"
#include "WardenCheckMgr.h"
#include "Warden.h"
+#include "World.h"
+#include <boost/thread/locks.hpp>
+#include <boost/thread/shared_mutex.hpp>
-WardenCheckMgr::WardenCheckMgr() { }
+WardenCheckMgr::WardenCheckMgr() : _checkStoreLock(new boost::shared_mutex())
+{
+}
WardenCheckMgr::~WardenCheckMgr()
{
@@ -33,6 +38,8 @@ WardenCheckMgr::~WardenCheckMgr()
for (CheckResultContainer::iterator itr = CheckResultStore.begin(); itr != CheckResultStore.end(); ++itr)
delete itr->second;
+
+ delete _checkStoreLock;
}
void WardenCheckMgr::LoadWardenChecks()
@@ -163,7 +170,7 @@ void WardenCheckMgr::LoadWardenOverrides()
uint32 count = 0;
- boost::unique_lock<boost::shared_mutex> lock(sWardenCheckMgr->_checkStoreLock);
+ boost::unique_lock<boost::shared_mutex> lock(*sWardenCheckMgr->_checkStoreLock);
do
{