diff options
author | Shauren <shauren.trinity@gmail.com> | 2014-08-16 01:43:42 +0200 |
---|---|---|
committer | Shauren <shauren.trinity@gmail.com> | 2014-08-16 01:43:42 +0200 |
commit | 7cb72c2aacbb3c2502bd5d25a52a6e96fe2b9cc8 (patch) | |
tree | bc405c86c8c6bc38cb11fdfd84eed61d1f781bbc /src/server/shared/Database/QueryHolder.cpp | |
parent | 5c60976046e819f6b2d5d24b589945535ae5042c (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.cpp | 8 |
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; |