diff options
author | Shauren <shauren.trinity@gmail.com> | 2013-06-20 14:35:00 +0200 |
---|---|---|
committer | Shauren <shauren.trinity@gmail.com> | 2013-06-20 14:35:00 +0200 |
commit | 365ac7910099d31dcc4f4765eba754974ca85c8d (patch) | |
tree | b5348935d08b84581f130b1a8379338aa1fe9c17 /src/server/game/Handlers/MiscHandler.cpp | |
parent | de64f5d34fe4781e9036440684be181e16528046 (diff) |
Core/PacketIO: Allow to queue up to 3 time sync requests to prevent very long loading screns from printing cheater warnings
Closes #10063
Diffstat (limited to 'src/server/game/Handlers/MiscHandler.cpp')
-rw-r--r-- | src/server/game/Handlers/MiscHandler.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/server/game/Handlers/MiscHandler.cpp b/src/server/game/Handlers/MiscHandler.cpp index 62227e14b5a..6b3959a7df3 100644 --- a/src/server/game/Handlers/MiscHandler.cpp +++ b/src/server/game/Handlers/MiscHandler.cpp @@ -1488,7 +1488,7 @@ void WorldSession::HandleTimeSyncResp(WorldPacket& recvData) uint32 counter, clientTicks; recvData >> counter >> clientTicks; - if (counter != _player->m_timeSyncCounter) + if (counter != _player->m_timeSyncQueue.front()) TC_LOG_ERROR(LOG_FILTER_NETWORKIO, "Wrong time sync counter from player %s (cheater?)", _player->GetName().c_str()); TC_LOG_DEBUG(LOG_FILTER_NETWORKIO, "Time sync received: counter %u, client ticks %u, time since last sync %u", counter, clientTicks, clientTicks - _player->m_timeSyncClient); @@ -1499,6 +1499,7 @@ void WorldSession::HandleTimeSyncResp(WorldPacket& recvData) TC_LOG_DEBUG(LOG_FILTER_NETWORKIO, "Our ticks: %u, diff %u, latency %u", ourTicks, ourTicks - clientTicks, GetLatency()); _player->m_timeSyncClient = clientTicks; + _player->m_timeSyncQueue.pop(); } void WorldSession::HandleResetInstancesOpcode(WorldPacket& /*recvData*/) |