mirror of
https://github.com/TrinityCore/TrinityCore.git
synced 2026-01-16 07:30:42 +01:00
Core/World: fix race condition in _UpdateRealmCharCount
(cherry picked from commit 5251dadf29)
This commit is contained in:
@@ -3045,16 +3045,20 @@ void World::_UpdateRealmCharCount(PreparedQueryResult resultCharCount)
|
||||
uint32 accountId = fields[0].GetUInt32();
|
||||
uint8 charCount = uint8(fields[1].GetUInt64());
|
||||
|
||||
SQLTransaction trans = LoginDatabase.BeginTransaction();
|
||||
|
||||
PreparedStatement* stmt = LoginDatabase.GetPreparedStatement(LOGIN_DEL_REALM_CHARACTERS_BY_REALM);
|
||||
stmt->setUInt32(0, accountId);
|
||||
stmt->setUInt32(1, realm.Id.Realm);
|
||||
LoginDatabase.Execute(stmt);
|
||||
trans->Append(stmt);
|
||||
|
||||
stmt = LoginDatabase.GetPreparedStatement(LOGIN_INS_REALM_CHARACTERS);
|
||||
stmt->setUInt8(0, charCount);
|
||||
stmt->setUInt32(1, accountId);
|
||||
stmt->setUInt32(2, realm.Id.Realm);
|
||||
LoginDatabase.Execute(stmt);
|
||||
trans->Append(stmt);
|
||||
|
||||
LoginDatabase.CommitTransaction(trans);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user