summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authormadmaxoft <github@xoft.cz>2014-08-11 15:33:20 +0200
committermadmaxoft <github@xoft.cz>2014-08-11 15:33:20 +0200
commit0a52ed6eb97ca5cc08fe255bfd04f78b4ea19a7e (patch)
treeb6c078bb29c1a9d38c9940c214c3dc71fa1a789e
parentMerge pull request #1310 from mc-server/ChestFix (diff)
downloadcuberite-0a52ed6eb97ca5cc08fe255bfd04f78b4ea19a7e.tar
cuberite-0a52ed6eb97ca5cc08fe255bfd04f78b4ea19a7e.tar.gz
cuberite-0a52ed6eb97ca5cc08fe255bfd04f78b4ea19a7e.tar.bz2
cuberite-0a52ed6eb97ca5cc08fe255bfd04f78b4ea19a7e.tar.lz
cuberite-0a52ed6eb97ca5cc08fe255bfd04f78b4ea19a7e.tar.xz
cuberite-0a52ed6eb97ca5cc08fe255bfd04f78b4ea19a7e.tar.zst
cuberite-0a52ed6eb97ca5cc08fe255bfd04f78b4ea19a7e.zip
-rw-r--r--src/Protocol/Protocol17x.cpp13
1 files changed, 9 insertions, 4 deletions
diff --git a/src/Protocol/Protocol17x.cpp b/src/Protocol/Protocol17x.cpp
index 318342f09..1f8ca00bb 100644
--- a/src/Protocol/Protocol17x.cpp
+++ b/src/Protocol/Protocol17x.cpp
@@ -48,7 +48,10 @@ Implements the 1.7.x protocol classes:
#define HANDLE_READ(ByteBuf, Proc, Type, Var) \
Type Var; \
- ByteBuf.Proc(Var);
+ if (!ByteBuf.Proc(Var))\
+ {\
+ return;\
+ }
@@ -1700,8 +1703,7 @@ bool cProtocol172::HandlePacket(cByteBuffer & a_ByteBuffer, UInt32 a_PacketType)
void cProtocol172::HandlePacketStatusPing(cByteBuffer & a_ByteBuffer)
{
- Int64 Timestamp;
- a_ByteBuffer.ReadBEInt64(Timestamp);
+ HANDLE_READ(a_ByteBuffer, ReadBEInt64, Int64, Timestamp);
cPacketizer Pkt(*this, 0x01); // Ping packet
Pkt.WriteInt64(Timestamp);
@@ -2054,7 +2056,10 @@ void cProtocol172::HandlePacketPluginMessage(cByteBuffer & a_ByteBuffer)
HANDLE_READ(a_ByteBuffer, ReadVarUTF8String, AString, Channel);
HANDLE_READ(a_ByteBuffer, ReadBEShort, short, Length);
AString Data;
- a_ByteBuffer.ReadString(Data, Length);
+ if (!a_ByteBuffer.ReadString(Data, Length))
+ {
+ return;
+ }
m_Client->HandlePluginMessage(Channel, Data);
}