diff options
Diffstat (limited to 'src/server/shared/Database')
-rw-r--r-- | src/server/shared/Database/DatabaseWorkerPool.h | 10 | ||||
-rw-r--r-- | src/server/shared/Database/PreparedStatement.cpp | 4 |
2 files changed, 7 insertions, 7 deletions
diff --git a/src/server/shared/Database/DatabaseWorkerPool.h b/src/server/shared/Database/DatabaseWorkerPool.h index f0b540022da..a1ee6407fea 100644 --- a/src/server/shared/Database/DatabaseWorkerPool.h +++ b/src/server/shared/Database/DatabaseWorkerPool.h @@ -59,6 +59,11 @@ class DatabaseWorkerPool ~DatabaseWorkerPool() { + _queue->Cancel(); + + delete _queue; + + delete _connectionInfo; } bool Open(const std::string& infoString, uint8 async_threads, uint8 synch_threads) @@ -122,12 +127,7 @@ class DatabaseWorkerPool for (uint8 i = 0; i < _connectionCount[IDX_SYNCH]; ++i) _connections[IDX_SYNCH][i]->Close(); - delete _queue; - TC_LOG_INFO("sql.driver", "All connections on DatabasePool '%s' closed.", GetDatabaseName()); - - delete _connectionInfo; - _connectionInfo = NULL; } /** diff --git a/src/server/shared/Database/PreparedStatement.cpp b/src/server/shared/Database/PreparedStatement.cpp index fb1bfa687d0..23c50ac2ef8 100644 --- a/src/server/shared/Database/PreparedStatement.cpp +++ b/src/server/shared/Database/PreparedStatement.cpp @@ -446,8 +446,8 @@ std::string MySQLPreparedStatement::getQueryString(std::string const& sqlPattern //- Execution PreparedStatementTask::PreparedStatementTask(PreparedStatement* stmt, bool async) : -m_stmt(stmt) -{ +m_stmt(stmt), m_result(nullptr) +{ m_has_result = async; // If it's async, then there's a result if (async) m_result = new PreparedQueryResultPromise(); |