|
|
|
@ -232,6 +232,7 @@ static void cancel_get_request_metadata(void* arg, grpc_error* error) { |
|
|
|
|
calld->creds->cancel_get_request_metadata(&calld->md_array, |
|
|
|
|
GRPC_ERROR_REF(error)); |
|
|
|
|
} |
|
|
|
|
GRPC_CALL_STACK_UNREF(calld->owning_call, "cancel_get_request_metadata"); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
static void send_security_metadata(grpc_call_element* elem, |
|
|
|
@ -320,6 +321,9 @@ static void send_security_metadata(grpc_call_element* elem, |
|
|
|
|
GRPC_ERROR_UNREF(error); |
|
|
|
|
} else { |
|
|
|
|
// Async return; register cancellation closure with call combiner.
|
|
|
|
|
// TODO(yashykt): We would not need this ref if call combiners used
|
|
|
|
|
// Closure::Run() instead of ExecCtx::Run()
|
|
|
|
|
GRPC_CALL_STACK_REF(calld->owning_call, "cancel_get_request_metadata"); |
|
|
|
|
calld->call_combiner->SetNotifyOnCancel(GRPC_CLOSURE_INIT( |
|
|
|
|
&calld->get_request_metadata_cancel_closure, |
|
|
|
|
cancel_get_request_metadata, elem, grpc_schedule_on_exec_ctx)); |
|
|
|
@ -356,6 +360,7 @@ static void cancel_check_call_host(void* arg, grpc_error* error) { |
|
|
|
|
chand->security_connector->cancel_check_call_host( |
|
|
|
|
&calld->async_result_closure, GRPC_ERROR_REF(error)); |
|
|
|
|
} |
|
|
|
|
GRPC_CALL_STACK_UNREF(calld->owning_call, "cancel_check_call_host"); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
static void client_auth_start_transport_stream_op_batch( |
|
|
|
@ -390,6 +395,9 @@ static void client_auth_start_transport_stream_op_batch( |
|
|
|
|
GRPC_ERROR_UNREF(error); |
|
|
|
|
} else { |
|
|
|
|
// Async return; register cancellation closure with call combiner.
|
|
|
|
|
// TODO(yashykt): We would not need this ref if call combiners used
|
|
|
|
|
// Closure::Run() instead of ExecCtx::Run()
|
|
|
|
|
GRPC_CALL_STACK_REF(calld->owning_call, "cancel_check_call_host"); |
|
|
|
|
calld->call_combiner->SetNotifyOnCancel(GRPC_CLOSURE_INIT( |
|
|
|
|
&calld->check_call_host_cancel_closure, cancel_check_call_host, |
|
|
|
|
elem, grpc_schedule_on_exec_ctx)); |
|
|
|
|