diff options
author | Bond-009 <bond.009@outlook.com> | 2019-08-11 11:39:43 +0200 |
---|---|---|
committer | peterbell10 <peterbell10@live.co.uk> | 2019-08-11 11:39:43 +0200 |
commit | e0ca4d83991d80865781c1dbbbfa1f92259a366a (patch) | |
tree | 7a1ee18692772befe2c60bd304474fae99d51e1b /src/Protocol/Protocol_1_9.cpp | |
parent | Wake up redstone simulator on slot changes for blockentities (#4348) (diff) | |
download | cuberite-e0ca4d83991d80865781c1dbbbfa1f92259a366a.tar cuberite-e0ca4d83991d80865781c1dbbbfa1f92259a366a.tar.gz cuberite-e0ca4d83991d80865781c1dbbbfa1f92259a366a.tar.bz2 cuberite-e0ca4d83991d80865781c1dbbbfa1f92259a366a.tar.lz cuberite-e0ca4d83991d80865781c1dbbbfa1f92259a366a.tar.xz cuberite-e0ca4d83991d80865781c1dbbbfa1f92259a366a.tar.zst cuberite-e0ca4d83991d80865781c1dbbbfa1f92259a366a.zip |
Diffstat (limited to 'src/Protocol/Protocol_1_9.cpp')
-rw-r--r-- | src/Protocol/Protocol_1_9.cpp | 24 |
1 files changed, 14 insertions, 10 deletions
diff --git a/src/Protocol/Protocol_1_9.cpp b/src/Protocol/Protocol_1_9.cpp index 00b233af5..f9a018a5c 100644 --- a/src/Protocol/Protocol_1_9.cpp +++ b/src/Protocol/Protocol_1_9.cpp @@ -70,10 +70,12 @@ static const UInt32 OFF_HAND = 1; #define HANDLE_READ(ByteBuf, Proc, Type, Var) \ Type Var; \ - if (!ByteBuf.Proc(Var))\ - {\ - return;\ - } + do { \ + if (!ByteBuf.Proc(Var))\ + {\ + return;\ + } \ + } while (false) @@ -81,14 +83,16 @@ static const UInt32 OFF_HAND = 1; #define HANDLE_PACKET_READ(ByteBuf, Proc, Type, Var) \ Type Var; \ - { \ - if (!ByteBuf.Proc(Var)) \ + do { \ { \ + if (!ByteBuf.Proc(Var)) \ + { \ + ByteBuf.CheckValid(); \ + return false; \ + } \ ByteBuf.CheckValid(); \ - return false; \ } \ - ByteBuf.CheckValid(); \ - } + } while (false) @@ -2922,7 +2926,7 @@ void cProtocol_1_9_0::HandleVanillaPluginMessage(cByteBuffer & a_ByteBuffer, con { if (a_Channel == "MC|AdvCdm") { - HANDLE_READ(a_ByteBuffer, ReadBEUInt8, UInt8, Mode) + HANDLE_READ(a_ByteBuffer, ReadBEUInt8, UInt8, Mode); switch (Mode) { case 0x00: |