diff options
author | Shauren <shauren.trinity@gmail.com> | 2016-10-24 23:06:42 +0200 |
---|---|---|
committer | Shauren <shauren.trinity@gmail.com> | 2016-10-24 23:06:42 +0200 |
commit | 40baf3e94ffc2bf4cae91bb540f5f303a3daa368 (patch) | |
tree | e33eaf797a774db610c45560a1998b5290c22ce6 | |
parent | f2155c9afafda00e721188e48132d9207b05affc (diff) |
Core/PacketIO: Restored WorldSession::LogUnprocessedTail functionality for packets processed using specialized classes for each opcode
-rw-r--r-- | src/server/game/Server/Protocol/Opcodes.cpp | 2 | ||||
-rw-r--r-- | src/server/game/Server/WorldSession.cpp | 4 | ||||
-rw-r--r-- | src/server/game/Server/WorldSession.h | 2 |
3 files changed, 3 insertions, 5 deletions
diff --git a/src/server/game/Server/Protocol/Opcodes.cpp b/src/server/game/Server/Protocol/Opcodes.cpp index 4fbc0b700fd..19d15709316 100644 --- a/src/server/game/Server/Protocol/Opcodes.cpp +++ b/src/server/game/Server/Protocol/Opcodes.cpp @@ -31,6 +31,7 @@ public: PacketClass nicePacket(std::move(packet)); nicePacket.Read(); (session->*HandlerFunction)(nicePacket); + session->LogUnprocessedTail(nicePacket.GetRawPacket()); } }; @@ -43,6 +44,7 @@ public: void Call(WorldSession* session, WorldPacket& packet) const override { (session->*HandlerFunction)(packet); + session->LogUnprocessedTail(&packet); } }; diff --git a/src/server/game/Server/WorldSession.cpp b/src/server/game/Server/WorldSession.cpp index dec0b2a8793..c89c15fa9e0 100644 --- a/src/server/game/Server/WorldSession.cpp +++ b/src/server/game/Server/WorldSession.cpp @@ -370,7 +370,6 @@ bool WorldSession::Update(uint32 diff, PacketFilter& updater) { sScriptMgr->OnPacketReceive(this, *packet); opHandle->Call(this, *packet); - LogUnprocessedTail(packet); } // lag can cause STATUS_LOGGEDIN opcodes to arrive after the player started a transfer break; @@ -383,7 +382,6 @@ bool WorldSession::Update(uint32 diff, PacketFilter& updater) // not expected _player or must checked in packet hanlder sScriptMgr->OnPacketReceive(this, *packet); opHandle->Call(this, *packet); - LogUnprocessedTail(packet); } break; case STATUS_TRANSFER: @@ -395,7 +393,6 @@ bool WorldSession::Update(uint32 diff, PacketFilter& updater) { sScriptMgr->OnPacketReceive(this, *packet); opHandle->Call(this, *packet); - LogUnprocessedTail(packet); } break; case STATUS_AUTHED: @@ -415,7 +412,6 @@ bool WorldSession::Update(uint32 diff, PacketFilter& updater) { sScriptMgr->OnPacketReceive(this, *packet); opHandle->Call(this, *packet); - LogUnprocessedTail(packet); } break; case STATUS_NEVER: diff --git a/src/server/game/Server/WorldSession.h b/src/server/game/Server/WorldSession.h index b244b5fd96c..1b3b9176366 100644 --- a/src/server/game/Server/WorldSession.h +++ b/src/server/game/Server/WorldSession.h @@ -1113,6 +1113,7 @@ class TC_GAME_API WorldSession void Handle_NULL(WorldPackets::Null& null); // not used void Handle_EarlyProccess(WorldPacket& recvPacket); // just mark packets processed in WorldSocket::OnRead + void LogUnprocessedTail(WorldPacket* packet); void HandleCharEnum(PreparedQueryResult result); void HandleCharEnumOpcode(WorldPackets::Character::EnumCharacters& /*enumCharacters*/); @@ -1807,7 +1808,6 @@ class TC_GAME_API WorldSession // logging helper void LogUnexpectedOpcode(WorldPacket* packet, const char* status, const char *reason); - void LogUnprocessedTail(WorldPacket* packet); // EnumData helpers bool IsLegitCharacterForAccount(ObjectGuid lowGUID) |