From 5565defd9fbf8a0256ce35d1fb23fb14756792c2 Mon Sep 17 00:00:00 2001 From: ariel- Date: Sat, 16 Jul 2016 20:29:46 -0300 Subject: Core/LFGMgr: fix race condition in _SaveToDB (cherry picked from commit 94fb921cea188bd24080a691236ae6c3479a0ab2) --- src/server/game/DungeonFinding/LFGMgr.cpp | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'src') diff --git a/src/server/game/DungeonFinding/LFGMgr.cpp b/src/server/game/DungeonFinding/LFGMgr.cpp index 6556e9a47f2..ed5b286f5cd 100644 --- a/src/server/game/DungeonFinding/LFGMgr.cpp +++ b/src/server/game/DungeonFinding/LFGMgr.cpp @@ -95,19 +95,19 @@ void LFGMgr::_SaveToDB(ObjectGuid guid, uint32 db_guid) if (!guid.IsParty()) return; - PreparedStatement* stmt = CharacterDatabase.GetPreparedStatement(CHAR_DEL_LFG_DATA); + SQLTransaction trans = CharacterDatabase.BeginTransaction(); + PreparedStatement* stmt = CharacterDatabase.GetPreparedStatement(CHAR_DEL_LFG_DATA); stmt->setUInt32(0, db_guid); - - CharacterDatabase.Execute(stmt); + trans->Append(stmt); stmt = CharacterDatabase.GetPreparedStatement(CHAR_INS_LFG_DATA); stmt->setUInt32(0, db_guid); - stmt->setUInt32(1, GetDungeon(guid)); stmt->setUInt32(2, GetState(guid)); + trans->Append(stmt); - CharacterDatabase.Execute(stmt); + CharacterDatabase.CommitTransaction(trans); } /// Load rewards for completing dungeons -- cgit v1.2.3