Core/DBLayer: Prevent committing transactions started on a different database

This commit is contained in:
Shauren
2019-07-27 10:52:33 +02:00
parent e8e89f58fb
commit f6e2b8cdc1
81 changed files with 405 additions and 383 deletions

View File

@@ -141,7 +141,7 @@ bool Garrison::LoadFromDB(PreparedQueryResult garrison, PreparedQueryResult blue
return true;
}
void Garrison::SaveToDB(SQLTransaction trans)
void Garrison::SaveToDB(CharacterDatabaseTransaction trans)
{
DeleteFromDB(_owner->GetGUID().GetCounter(), trans);
@@ -204,7 +204,7 @@ void Garrison::SaveToDB(SQLTransaction trans)
}
}
void Garrison::DeleteFromDB(ObjectGuid::LowType ownerGuid, SQLTransaction trans)
void Garrison::DeleteFromDB(ObjectGuid::LowType ownerGuid, CharacterDatabaseTransaction trans)
{
CharacterDatabasePreparedStatement* stmt = CharacterDatabase.GetPreparedStatement(CHAR_DEL_CHARACTER_GARRISON);
stmt->setUInt64(0, ownerGuid);
@@ -243,7 +243,7 @@ bool Garrison::Create(uint32 garrSiteId)
void Garrison::Delete()
{
SQLTransaction trans = CharacterDatabase.BeginTransaction();
CharacterDatabaseTransaction trans = CharacterDatabase.BeginTransaction();
DeleteFromDB(_owner->GetGUID().GetCounter(), trans);
CharacterDatabase.CommitTransaction(trans);