aboutsummaryrefslogtreecommitdiff
path: root/src/server/shared/Database/QueryHolder.cpp
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2014-08-16 01:43:42 +0200
committerShauren <shauren.trinity@gmail.com>2014-08-16 01:43:42 +0200
commit7cb72c2aacbb3c2502bd5d25a52a6e96fe2b9cc8 (patch)
treebc405c86c8c6bc38cb11fdfd84eed61d1f781bbc /src/server/shared/Database/QueryHolder.cpp
parent5c60976046e819f6b2d5d24b589945535ae5042c (diff)
Core/DBLayer: Fixed an incredibly rare memory leak happening when player started loading from database and never finished
Diffstat (limited to 'src/server/shared/Database/QueryHolder.cpp')
-rw-r--r--src/server/shared/Database/QueryHolder.cpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/server/shared/Database/QueryHolder.cpp b/src/server/shared/Database/QueryHolder.cpp
index bd938561b50..f0dc3c96e4e 100644
--- a/src/server/shared/Database/QueryHolder.cpp
+++ b/src/server/shared/Database/QueryHolder.cpp
@@ -166,8 +166,16 @@ void SQLQueryHolder::SetSize(size_t size)
m_queries.resize(size);
}
+SQLQueryHolderTask::~SQLQueryHolderTask()
+{
+ if (!m_executed)
+ delete m_holder;
+}
+
bool SQLQueryHolderTask::Execute()
{
+ m_executed = true;
+
if (!m_holder)
return false;