[#1284] Fix bug which can cause in infinity-loop triggered by a handler removal
This commit is contained in:
parent
18dca2a8a4
commit
58bfd6bf3b
@ -880,12 +880,12 @@ final class DefaultChannelHandlerContext extends DefaultAttributeMap implements
|
||||
if (pipeline.isInboundShutdown()) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (findContextInbound() == next) {
|
||||
DefaultChannelHandlerContext nextInbound = findContextInbound();
|
||||
if (nextInbound == next) {
|
||||
next.invokeInboundBufferUpdated();
|
||||
} else {
|
||||
// Pipeline changed since the task was submitted; try again.
|
||||
fireInboundBufferUpdated0(next);
|
||||
fireInboundBufferUpdated0(nextInbound);
|
||||
}
|
||||
}
|
||||
};
|
||||
|
Loading…
Reference in New Issue
Block a user