diff --git a/src/server/game/Battlegrounds/BattlegroundQueue.cpp b/src/server/game/Battlegrounds/BattlegroundQueue.cpp index b78cb7189d045..ee4020de9bfc3 100644 --- a/src/server/game/Battlegrounds/BattlegroundQueue.cpp +++ b/src/server/game/Battlegrounds/BattlegroundQueue.cpp @@ -381,12 +381,15 @@ void BattlegroundQueue::FillPlayersToBG(Battleground* bg, const int32 aliFree, c return; // ally: at first fill as much as possible - for (auto & Ali_itr : m_QueuedGroups[bracket_id][BG_QUEUE_NORMAL_ALLIANCE]) - m_SelectionPools[TEAM_ALLIANCE].AddGroup(Ali_itr, aliFree); + auto Ali_itr = m_QueuedGroups[bracket_id][BG_QUEUE_NORMAL_ALLIANCE].begin(); + for (; Ali_itr != m_QueuedGroups[bracket_id][BG_QUEUE_NORMAL_ALLIANCE].end(); ++Ali_itr) + m_SelectionPools[TEAM_ALLIANCE].AddGroup((*Ali_itr), aliFree); + // horde: at first fill as much as possible - for (auto & Horde_itr : m_QueuedGroups[bracket_id][BG_QUEUE_NORMAL_HORDE]) - m_SelectionPools[TEAM_HORDE].AddGroup(Horde_itr, hordeFree); + auto Horde_itr = m_QueuedGroups[bracket_id][BG_QUEUE_NORMAL_HORDE].begin(); + for (; Horde_itr != m_QueuedGroups[bracket_id][BG_QUEUE_NORMAL_HORDE].end() &&, hordeFree); ++Horde_itr) + m_SelectionPools[TEAM_HORDE].AddGroup((*Horde_itr); // calculate free space after adding int32 aliDiff = aliFree - int32(m_SelectionPools[TEAM_ALLIANCE].GetPlayerCount());