diff --git a/src/main/java/org/jboss/netty/channel/socket/nio/NioWorker.java b/src/main/java/org/jboss/netty/channel/socket/nio/NioWorker.java index 82347a00c0..32b22ce829 100644 --- a/src/main/java/org/jboss/netty/channel/socket/nio/NioWorker.java +++ b/src/main/java/org/jboss/netty/channel/socket/nio/NioWorker.java @@ -342,11 +342,6 @@ class NioWorker implements Runnable { } static void write(final NioSocketChannel channel, boolean mightNeedWakeup) { - if (!channel.isConnected()) { - cleanUpWriteBuffer(channel); - return; - } - if (mightNeedWakeup && scheduleWriteIfNecessary(channel)) { return; } @@ -452,7 +447,9 @@ class NioWorker implements Runnable { addOpWrite = true; break; } - } catch (AsynchronousCloseException e) { + } catch (ClosedChannelException e) { + cleanUpWriteBuffer(channel); + // Doesn't need a user attention - ignore. channel.currentWriteEvent = evt; channel.currentWriteIndex = bufIdx;