diff options
author | Shauren <shauren.trinity@gmail.com> | 2013-11-11 00:05:36 +0100 |
---|---|---|
committer | Shauren <shauren.trinity@gmail.com> | 2013-11-11 00:05:36 +0100 |
commit | cdfbe2538fa008833960fd40c89a2a13909a9fac (patch) | |
tree | c211165ce1d03584367f7df81bbb317690f816fa | |
parent | ab2d26cb910ea9d24ae87d6342f0cbc264fc16cf (diff) |
Core/LFG: Fixed lfg queues being created just to retrieve join time for players
Closes #10136
-rw-r--r-- | src/server/game/DungeonFinding/LFGMgr.cpp | 8 | ||||
-rw-r--r-- | src/server/game/DungeonFinding/LFGQueue.cpp | 8 | ||||
-rw-r--r-- | src/server/game/DungeonFinding/LFGQueue.h | 2 |
3 files changed, 13 insertions, 5 deletions
diff --git a/src/server/game/DungeonFinding/LFGMgr.cpp b/src/server/game/DungeonFinding/LFGMgr.cpp index a4d4771cc87..501501b0ffc 100644 --- a/src/server/game/DungeonFinding/LFGMgr.cpp +++ b/src/server/game/DungeonFinding/LFGMgr.cpp @@ -1883,8 +1883,12 @@ bool LFGMgr::AllQueued(LfgGuidList const& check) time_t LFGMgr::GetQueueJoinTime(uint64 guid) { - LFGQueue& queue = GetQueue(guid); - return queue.GetJoinTime(guid); + uint8 queueId = GetQueueId(guid); + LfgQueueContainer::const_iterator itr = QueuesStore.find(queueId); + if (itr != QueuesStore.end()) + return itr->second.GetJoinTime(guid); + + return 0; } // Only for debugging purposes diff --git a/src/server/game/DungeonFinding/LFGQueue.cpp b/src/server/game/DungeonFinding/LFGQueue.cpp index 20adfe2f0c4..a3ab4ceab03 100644 --- a/src/server/game/DungeonFinding/LFGQueue.cpp +++ b/src/server/game/DungeonFinding/LFGQueue.cpp @@ -587,9 +587,13 @@ void LFGQueue::UpdateQueueTimers(uint8 queueId, time_t currTime) } } -time_t LFGQueue::GetJoinTime(uint64 guid) +time_t LFGQueue::GetJoinTime(uint64 guid) const { - return QueueDataStore[guid].joinTime; + LfgQueueDataContainer::const_iterator itr = QueueDataStore.find(guid); + if (itr != QueueDataStore.end()) + return itr->second.joinTime; + + return 0; } std::string LFGQueue::DumpQueueInfo() const diff --git a/src/server/game/DungeonFinding/LFGQueue.h b/src/server/game/DungeonFinding/LFGQueue.h index 02320848f40..be6fd135894 100644 --- a/src/server/game/DungeonFinding/LFGQueue.h +++ b/src/server/game/DungeonFinding/LFGQueue.h @@ -101,7 +101,7 @@ class LFGQueue // Update Queue timers void UpdateQueueTimers(uint8 queueId, time_t currTime); - time_t GetJoinTime(uint64 guid); + time_t GetJoinTime(uint64 guid) const; // Find new group uint8 FindGroups(); |