From d387bdc69545de920dea784c40be5b3ade7d1474 Mon Sep 17 00:00:00 2001 From: Viste Date: Sat, 22 Feb 2020 13:24:08 +0300 Subject: [PATCH] fix(Core/Packet): fix crash happening when someone sends small packets that is processed directly to WorldSocket (#2669) --- src/server/game/Server/WorldSocket.cpp | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/server/game/Server/WorldSocket.cpp b/src/server/game/Server/WorldSocket.cpp index f496e4c28..eb0fc037e 100644 --- a/src/server/game/Server/WorldSocket.cpp +++ b/src/server/game/Server/WorldSocket.cpp @@ -676,7 +676,15 @@ int WorldSocket::ProcessIncoming(WorldPacket* new_pct) switch (opcode) { case CMSG_PING: - return HandlePing (*new_pct); + { + try + { + return HandlePing(*new_pct); + } + catch (ByteBufferPositionException const&) {} + sLog->outError("WorldSocket::ReadDataHandler(): client sent malformed CMSG_PING"); + return -1; + } case CMSG_AUTH_SESSION: if (m_Session) {