diff --git a/proxy/src/main/java/com/velocitypowered/proxy/protocol/netty/AutoReadHolderHandler.java b/proxy/src/main/java/com/velocitypowered/proxy/protocol/netty/AutoReadHolderHandler.java index 7c457e164..9083f72a1 100644 --- a/proxy/src/main/java/com/velocitypowered/proxy/protocol/netty/AutoReadHolderHandler.java +++ b/proxy/src/main/java/com/velocitypowered/proxy/protocol/netty/AutoReadHolderHandler.java @@ -62,8 +62,12 @@ public class AutoReadHolderHandler extends ChannelDuplexHandler { @Override public void channelReadComplete(ChannelHandlerContext ctx) throws Exception { - if (this.queuedMessages.isEmpty()) { - ctx.fireChannelReadComplete(); + if (ctx.channel().config().isAutoRead()) { + if (!this.queuedMessages.isEmpty()) { + this.drainQueuedMessages(ctx); // will also call fireChannelReadComplete() + } else { + ctx.fireChannelReadComplete(); + } } }