示例#1
0
ChannelHandlerContext* ChannelPipeline::GetActualDownstreamContext(
        ChannelHandlerContext* ctx)
{
	RETURN_NULL_IF_NULL(ctx);

	ChannelHandlerContext* realCtx = ctx;
	while (!realCtx->CanHandleDownstream())
	{
		realCtx = realCtx->GetPrev();
		RETURN_NULL_IF_NULL(realCtx);
	}
	return realCtx;
}