diff options
author | Craig Tiller <ctiller@google.com> | 2017-03-13 15:51:37 -0700 |
---|---|---|
committer | Craig Tiller <ctiller@google.com> | 2017-03-13 15:51:37 -0700 |
commit | b18c8ba0b6bbc2317dd92353288f2b1c0ff353d5 (patch) | |
tree | 21b0057a2c6f3e5afec3cee58770b9ee7c2eec51 /src/core | |
parent | c5b90df9b2738076acf6a6972d833489f6470335 (diff) |
Fix cancellation
Diffstat (limited to 'src/core')
-rw-r--r-- | src/core/lib/surface/call.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/core/lib/surface/call.c b/src/core/lib/surface/call.c index 8b2f9fd3f5..47f36be5fd 100644 --- a/src/core/lib/surface/call.c +++ b/src/core/lib/surface/call.c @@ -1070,8 +1070,8 @@ static void post_batch_completion(grpc_exec_ctx *exec_ctx, &call->metadata_batch[1 /* is_receiving */][1 /* is_trailing */]; recv_trailing_filter(exec_ctx, call, md); - gpr_atm_rel_store(&call->received_final_op_atm, 1); /* propagate cancellation to any interested children */ + gpr_atm_rel_store(&call->received_final_op_atm, 1); gpr_mu_lock(&call->child_list_mu); child_call = call->first_child; if (child_call != NULL) { @@ -1079,7 +1079,7 @@ static void post_batch_completion(grpc_exec_ctx *exec_ctx, next_child_call = child_call->sibling_next; if (child_call->cancellation_is_inherited) { GRPC_CALL_INTERNAL_REF(child_call, "propagate_cancel"); - cancel_with_error(exec_ctx, call, STATUS_FROM_API_OVERRIDE, + cancel_with_error(exec_ctx, child_call, STATUS_FROM_API_OVERRIDE, GRPC_ERROR_CANCELLED); GRPC_CALL_INTERNAL_UNREF(exec_ctx, child_call, "propagate_cancel"); } |