diff --git a/src/main/java/com/corundumstudio/socketio/handler/EncoderHandler.java b/src/main/java/com/corundumstudio/socketio/handler/EncoderHandler.java index b9fa451..c101d60 100644 --- a/src/main/java/com/corundumstudio/socketio/handler/EncoderHandler.java +++ b/src/main/java/com/corundumstudio/socketio/handler/EncoderHandler.java @@ -217,8 +217,9 @@ public class EncoderHandler extends ChannelOutboundHandlerAdapter { if (log.isTraceEnabled()) { log.trace("Out message: {} sessionId: {}", out.toString(CharsetUtil.UTF_8), msg.getSessionId()); } - ctx.channel().writeAndFlush(res); - if (!out.isReadable()) { + if (out.isReadable()) { + ctx.channel().writeAndFlush(res); + } else { out.release(); }