diff options
author | 2016-05-03 22:55:28 -0700 | |
---|---|---|
committer | 2016-05-03 22:55:28 -0700 | |
commit | 261db111e638da413ce3f7e933571cfbe02874c2 (patch) | |
tree | 5014872cc7835ce66db831bbca07810c4124525b /src/core/lib/channel/channel_stack.c | |
parent | f72eb97b3640cb3f99336b34b707c853c6db6ac0 (diff) | |
parent | b75f5571e8c27da5ccbde298e323b515580b80cc (diff) |
Merge branch 'master' of github.com:grpc/grpc into lb_pollset_propagation
Diffstat (limited to 'src/core/lib/channel/channel_stack.c')
-rw-r--r-- | src/core/lib/channel/channel_stack.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/core/lib/channel/channel_stack.c b/src/core/lib/channel/channel_stack.c index cedc8ade82..81135d2fc0 100644 --- a/src/core/lib/channel/channel_stack.c +++ b/src/core/lib/channel/channel_stack.c @@ -214,14 +214,16 @@ void grpc_call_stack_ignore_set_pollset_or_pollset_set(grpc_exec_ctx *exec_ctx, grpc_call_element *elem, grpc_pops *pops) {} -void grpc_call_stack_destroy(grpc_exec_ctx *exec_ctx, grpc_call_stack *stack) { +void grpc_call_stack_destroy(grpc_exec_ctx *exec_ctx, grpc_call_stack *stack, + void *and_free_memory) { grpc_call_element *elems = CALL_ELEMS_FROM_STACK(stack); size_t count = stack->count; size_t i; /* destroy per-filter data */ for (i = 0; i < count; i++) { - elems[i].filter->destroy_call_elem(exec_ctx, &elems[i]); + elems[i].filter->destroy_call_elem(exec_ctx, &elems[i], + i == count - 1 ? and_free_memory : NULL); } } |