diff options
| author | qwasdrizzel <145519042+qwasdrizzel@users.noreply.github.com> | 2026-03-16 21:44:26 -0500 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2026-03-16 21:44:26 -0500 |
| commit | ce739f6045ec72127491286ea3f3f21e537c1b55 (patch) | |
| tree | f33bd42a47c1b4a7b2153a7fb77127ee3b407db9 /Minecraft.World/PreLoginPacket.cpp | |
| parent | 255a18fe8e9b57377975f82e2b227afe2a12eda0 (diff) | |
| parent | 5a59f5d146b43811dde6a5a0245ee9875d7b5cd1 (diff) | |
Merge branch 'smartcmd:main' into main
Diffstat (limited to 'Minecraft.World/PreLoginPacket.cpp')
| -rw-r--r-- | Minecraft.World/PreLoginPacket.cpp | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/Minecraft.World/PreLoginPacket.cpp b/Minecraft.World/PreLoginPacket.cpp index 4b474214..ddcfe197 100644 --- a/Minecraft.World/PreLoginPacket.cpp +++ b/Minecraft.World/PreLoginPacket.cpp @@ -9,7 +9,7 @@ PreLoginPacket::PreLoginPacket() { loginKey = L""; - m_playerXuids = NULL; + m_playerXuids = nullptr; m_dwPlayerCount = 0; m_friendsOnlyBits = 0; m_ugcPlayersVersion = 0; @@ -23,7 +23,7 @@ PreLoginPacket::PreLoginPacket() PreLoginPacket::PreLoginPacket(wstring userName) { this->loginKey = userName; - m_playerXuids = NULL; + m_playerXuids = nullptr; m_dwPlayerCount = 0; m_friendsOnlyBits = 0; m_ugcPlayersVersion = 0; @@ -50,7 +50,7 @@ PreLoginPacket::PreLoginPacket(wstring userName, PlayerUID *playerXuids, DWORD p PreLoginPacket::~PreLoginPacket() { - if( m_playerXuids != NULL ) delete [] m_playerXuids; + if( m_playerXuids != nullptr ) delete [] m_playerXuids; } void PreLoginPacket::read(DataInputStream *dis) //throws IOException @@ -62,6 +62,7 @@ void PreLoginPacket::read(DataInputStream *dis) //throws IOException m_friendsOnlyBits = dis->readByte(); m_ugcPlayersVersion = dis->readInt(); m_dwPlayerCount = dis->readByte(); + if( m_dwPlayerCount > MINECRAFT_NET_MAX_PLAYERS ) m_dwPlayerCount = MINECRAFT_NET_MAX_PLAYERS; if( m_dwPlayerCount > 0 ) { m_playerXuids = new PlayerUID[m_dwPlayerCount]; @@ -74,6 +75,7 @@ void PreLoginPacket::read(DataInputStream *dis) //throws IOException { m_szUniqueSaveName[i]=dis->readByte(); } + // m_szUniqueSaveName[m_iSaveNameLen - 1] = 0; // LCEMP does this but I have no idea why, TODO: why? m_serverSettings = dis->readInt(); m_hostIndex = dis->readByte(); @@ -92,7 +94,7 @@ void PreLoginPacket::write(DataOutputStream *dos) //throws IOException dos->writeByte(m_friendsOnlyBits); dos->writeInt(m_ugcPlayersVersion); - dos->writeByte((byte)m_dwPlayerCount); + dos->writeByte(static_cast<byte>(m_dwPlayerCount)); for(DWORD i = 0; i < m_dwPlayerCount; ++i) { dos->writePlayerUID( m_playerXuids[i] ); @@ -115,5 +117,5 @@ void PreLoginPacket::handle(PacketListener *listener) int PreLoginPacket::getEstimatedSize() { - return 4 + 4 + (int)loginKey.length() + 4 +14 + 4 + 1 + 4; + return 4 + 4 + static_cast<int>(loginKey.length()) + 4 +14 + 4 + 1 + 4; } |
