diff options
author | Craig Tiller <ctiller@google.com> | 2015-09-22 08:30:08 -0700 |
---|---|---|
committer | Craig Tiller <ctiller@google.com> | 2015-09-22 08:30:08 -0700 |
commit | 493fd972826a04083cd31ae1c0154b649c1264aa (patch) | |
tree | 7d339100e9e50dae6e8aceb1066b25be9b095b96 /src/core | |
parent | d64ed6a38bdf553013f08531dcc290e07f76c42a (diff) | |
parent | 51261563da4042a81fed86cd46ab9e5a2693fd2c (diff) |
Merge pull request #3407 from jboeuf/fix_3390
Fixing issue #3390
Diffstat (limited to 'src/core')
-rw-r--r-- | src/core/security/client_auth_filter.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/core/security/client_auth_filter.c b/src/core/security/client_auth_filter.c index f3ecfd0e60..d15a967341 100644 --- a/src/core/security/client_auth_filter.c +++ b/src/core/security/client_auth_filter.c @@ -203,7 +203,8 @@ static void auth_start_transport_op(grpc_call_element *elem, size_t i; grpc_client_security_context *sec_ctx = NULL; - if (calld->security_context_set == 0) { + if (calld->security_context_set == 0 && + op->cancel_with_status == GRPC_STATUS_OK) { calld->security_context_set = 1; GPR_ASSERT(op->context); if (op->context[GRPC_CONTEXT_SECURITY].value == NULL) { @@ -218,11 +219,11 @@ static void auth_start_transport_op(grpc_call_element *elem, chand->security_connector->base.auth_context, "client_auth_filter"); } - if (op->bind_pollset) { + if (op->bind_pollset != NULL) { calld->pollset = op->bind_pollset; } - if (op->send_ops && !calld->sent_initial_metadata) { + if (op->send_ops != NULL && !calld->sent_initial_metadata) { size_t nops = op->send_ops->nops; grpc_stream_op *ops = op->send_ops->ops; for (i = 0; i < nops; i++) { |