aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core/lib/security
diff options
context:
space:
mode:
authorGravatar Craig Tiller <ctiller@google.com>2017-01-12 14:04:43 -0800
committerGravatar Craig Tiller <ctiller@google.com>2017-01-12 14:04:43 -0800
commit8cf88f1eb169f5bae7ddfbdd571fd4c27ba5e1bf (patch)
treeefed6075d073f85b3b916ecd2a975a6c9f3396f0 /src/core/lib/security
parent45d318351b398ed2231f82988af88ee13befaff4 (diff)
Add a mechanism for tagging threads that might be owned by
calls/channels Use it to ensure we don't delete the call from that thread: doing so would create a cycle that's kind of bad.
Diffstat (limited to 'src/core/lib/security')
-rw-r--r--src/core/lib/security/credentials/plugin/plugin_credentials.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/core/lib/security/credentials/plugin/plugin_credentials.c b/src/core/lib/security/credentials/plugin/plugin_credentials.c
index afce6a6b12..7bc5dfb403 100644
--- a/src/core/lib/security/credentials/plugin/plugin_credentials.c
+++ b/src/core/lib/security/credentials/plugin/plugin_credentials.c
@@ -65,7 +65,9 @@ static void plugin_md_request_metadata_ready(void *request,
grpc_status_code status,
const char *error_details) {
/* called from application code */
- grpc_exec_ctx exec_ctx = GRPC_EXEC_CTX_INIT;
+ grpc_exec_ctx exec_ctx = GRPC_EXEC_CTX_INITIALIZER(
+ GRPC_EXEC_CTX_FLAG_IS_FINISHED | GRPC_EXEC_CTX_FLAG_THREAD_RESOURCE_LOOP,
+ NULL, NULL);
grpc_metadata_plugin_request *r = (grpc_metadata_plugin_request *)request;
if (status != GRPC_STATUS_OK) {
if (error_details != NULL) {