diff options
-rw-r--r-- | src/server/game/Server/WorldSocket.cpp | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/src/server/game/Server/WorldSocket.cpp b/src/server/game/Server/WorldSocket.cpp index 213206083bc..f73e36f3fbd 100644 --- a/src/server/game/Server/WorldSocket.cpp +++ b/src/server/game/Server/WorldSocket.cpp @@ -870,11 +870,9 @@ int WorldSocket::HandleAuthSession(WorldPacket& recvPacket) addonsData.resize(addonSize); recvPacket.read((uint8*)addonsData.contents(), addonSize); - uint8 highBitsAccountLen; - uint8 lowBitsAccountLen; - recvPacket >> highBitsAccountLen; - recvPacket >> lowBitsAccountLen; - account = recvPacket.ReadString(((highBitsAccountLen << 5) & 0xFF) | (lowBitsAccountLen >> 3)); + recvPacket.ReadBit(); + uint32 accountNameLength = recvPacket.ReadBits(12); + account = recvPacket.ReadString(accountNameLength); if (sWorld->IsClosed()) { |