diff options
Diffstat (limited to 'src/core/channel/child_channel.c')
-rw-r--r-- | src/core/channel/child_channel.c | 18 |
1 files changed, 3 insertions, 15 deletions
diff --git a/src/core/channel/child_channel.c b/src/core/channel/child_channel.c index 2cb03829c7..244417384a 100644 --- a/src/core/channel/child_channel.c +++ b/src/core/channel/child_channel.c @@ -61,22 +61,11 @@ typedef struct { } lb_channel_data; typedef struct { - grpc_call_element *back; grpc_child_channel *channel; } lb_call_data; -static void lb_call_op(grpc_call_element *elem, grpc_call_element *from_elem, - grpc_call_op *op) { - lb_call_data *calld = elem->call_data; - - switch (op->dir) { - case GRPC_CALL_UP: - calld->back->filter->call_op(calld->back, elem, op); - break; - case GRPC_CALL_DOWN: - grpc_call_next_op(elem, op); - break; - } +static void lb_start_transport_op(grpc_call_element *elem, grpc_transport_op *op) { + grpc_call_next_op(elem, op); } /* Currently we assume all channel operations should just be pushed up. */ @@ -165,7 +154,7 @@ static void lb_destroy_channel_elem(grpc_channel_element *elem) { } const grpc_channel_filter grpc_child_channel_top_filter = { - lb_call_op, lb_channel_op, sizeof(lb_call_data), + lb_start_transport_op, lb_channel_op, sizeof(lb_call_data), lb_init_call_elem, lb_destroy_call_elem, sizeof(lb_channel_data), lb_init_channel_elem, lb_destroy_channel_elem, "child-channel", }; @@ -282,7 +271,6 @@ grpc_child_call *grpc_child_channel_create_call(grpc_child_channel *channel, lbelem = LINK_BACK_ELEM_FROM_CALL(stk); lbchand = lbelem->channel_data; lbcalld = lbelem->call_data; - lbcalld->back = parent; lbcalld->channel = channel; gpr_mu_lock(&lbchand->mu); |