SslHandler#handlerRemoved0() shouldn't care about the SSLEngine being a specific type but only if it's ReferenceCounted
Motivation SslHandler should release any type of SSLEngine if it implements the ReferenceCounted interface Modifications Change condition to check for ReferenceCounted interface Result Better use of interfaces
This commit is contained in:
parent
8eebc87f1b
commit
7d04299938
@ -34,6 +34,7 @@ import io.netty.channel.ChannelPromiseNotifier;
|
||||
import io.netty.channel.PendingWriteQueue;
|
||||
import io.netty.handler.codec.ByteToMessageDecoder;
|
||||
import io.netty.handler.codec.UnsupportedMessageTypeException;
|
||||
import io.netty.util.ReferenceCounted;
|
||||
import io.netty.util.concurrent.DefaultPromise;
|
||||
import io.netty.util.concurrent.EventExecutor;
|
||||
import io.netty.util.concurrent.Future;
|
||||
@ -580,8 +581,8 @@ public class SslHandler extends ByteToMessageDecoder implements ChannelOutboundH
|
||||
// Check if queue is not empty first because create a new ChannelException is expensive
|
||||
pendingUnencryptedWrites.removeAndFailAll(new ChannelException("Pending write on removal of SslHandler"));
|
||||
}
|
||||
if (engine instanceof ReferenceCountedOpenSslEngine) {
|
||||
((ReferenceCountedOpenSslEngine) engine).release();
|
||||
if (engine instanceof ReferenceCounted) {
|
||||
((ReferenceCounted) engine).release();
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user