diff --git a/proxy/src/main/java/com/velocitypowered/proxy/protocol/netty/MinecraftCompressDecoder.java b/proxy/src/main/java/com/velocitypowered/proxy/protocol/netty/MinecraftCompressDecoder.java index 59cb00ea2..90b747b05 100644 --- a/proxy/src/main/java/com/velocitypowered/proxy/protocol/netty/MinecraftCompressDecoder.java +++ b/proxy/src/main/java/com/velocitypowered/proxy/protocol/netty/MinecraftCompressDecoder.java @@ -97,6 +97,8 @@ public class MinecraftCompressDecoder extends MessageToMessageDecoder { ByteBuf uncompressed = preferredBuffer(ctx.alloc(), compressor, claimedUncompressedSize); try { compressor.inflate(compatibleIn, uncompressed, claimedUncompressedSize); + checkFrame(uncompressed.writerIndex() == claimedUncompressedSize, + "Decompressed size %s does not match claimed uncompressed size %s", uncompressed.writerIndex(), claimedUncompressedSize); out.add(uncompressed); } catch (Exception e) { uncompressed.release();