aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core/lib/surface
diff options
context:
space:
mode:
authorGravatar Craig Tiller <ctiller@google.com>2017-05-26 16:45:37 -0700
committerGravatar Craig Tiller <ctiller@google.com>2017-05-26 16:45:37 -0700
commit8e17000e91d9741e155797e90d92948ffb5bcb4f (patch)
treec62cf818ccc6bc0bd7173fe235ff728119bd3efb /src/core/lib/surface
parent3e87909a8a3d17140598103a9dde99c55120fa4f (diff)
parentf809ca334c867566d615f6c99954323dc37ab288 (diff)
Merge branch 'cq-drop' of github.com:ctiller/grpc into cq-drop
Diffstat (limited to 'src/core/lib/surface')
-rw-r--r--src/core/lib/surface/completion_queue.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/core/lib/surface/completion_queue.c b/src/core/lib/surface/completion_queue.c
index 0aefed1f9e..9fd7d5fbc7 100644
--- a/src/core/lib/surface/completion_queue.c
+++ b/src/core/lib/surface/completion_queue.c
@@ -865,7 +865,8 @@ static grpc_event cq_next(grpc_completion_queue *cq, gpr_timespec deadline,
grpc_exec_ctx_finish(&exec_ctx);
GPR_ASSERT(is_finished_arg.stolen_completion == NULL);
- if (cq_event_queue_num_items(&cqd->queue) > 0) {
+ if (cq_event_queue_num_items(&cqd->queue) > 0 &&
+ gpr_atm_no_barrier_load(&cqd->shutdown) == 0) {
gpr_mu_lock(cqd->mu);
cq->poller_vtable->kick(POLLSET_FROM_CQ(cq), NULL);
gpr_mu_unlock(cqd->mu);