A little bit more accuracy in swallowing ClosedChannelException
This commit is contained in:
parent
7d3fde9b14
commit
a6fb8708ca
@ -619,10 +619,20 @@ public class SslHandler extends FrameDecoder {
|
|||||||
ChannelBuffer msg = ChannelBuffers.buffer(outNetBuf.remaining());
|
ChannelBuffer msg = ChannelBuffers.buffer(outNetBuf.remaining());
|
||||||
msg.writeBytes(outNetBuf.array(), 0, msg.capacity());
|
msg.writeBytes(outNetBuf.array(), 0, msg.capacity());
|
||||||
outNetBuf.clear();
|
outNetBuf.clear();
|
||||||
if (channel.isConnected()) {
|
|
||||||
future = future(channel);
|
future = future(channel);
|
||||||
write(ctx, future, msg);
|
future.addListener(new ChannelFutureListener() {
|
||||||
}
|
public void operationComplete(ChannelFuture future)
|
||||||
|
throws Exception {
|
||||||
|
if (future.getCause() instanceof ClosedChannelException) {
|
||||||
|
synchronized (ignoreClosedChannelExceptionLock) {
|
||||||
|
ignoreClosedChannelException ++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
write(ctx, future, msg);
|
||||||
}
|
}
|
||||||
|
|
||||||
switch (result.getHandshakeStatus()) {
|
switch (result.getHandshakeStatus()) {
|
||||||
@ -663,18 +673,8 @@ public class SslHandler extends FrameDecoder {
|
|||||||
|
|
||||||
if (future == null) {
|
if (future == null) {
|
||||||
future = succeededFuture(channel);
|
future = succeededFuture(channel);
|
||||||
} else {
|
|
||||||
future.addListener(new ChannelFutureListener() {
|
|
||||||
public void operationComplete(ChannelFuture future)
|
|
||||||
throws Exception {
|
|
||||||
if (future.getCause() instanceof ClosedChannelException) {
|
|
||||||
synchronized (ignoreClosedChannelExceptionLock) {
|
|
||||||
ignoreClosedChannelException ++;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return future;
|
return future;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user