aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar Craig Tiller <ctiller@google.com>2016-02-21 22:43:21 -0800
committerGravatar Craig Tiller <ctiller@google.com>2016-02-21 22:43:21 -0800
commit23a329838588eb3dc7bcfee365007c5194288912 (patch)
tree67e9cab357b05215550732d014d1ae1dc4c0def2
parentdd4531fd33781db5fc725b3d75c05092d5390cfd (diff)
Fix plucking problem
-rw-r--r--src/core/surface/completion_queue.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/src/core/surface/completion_queue.c b/src/core/surface/completion_queue.c
index de295ab941..0a80680f02 100644
--- a/src/core/surface/completion_queue.c
+++ b/src/core/surface/completion_queue.c
@@ -333,10 +333,10 @@ grpc_event grpc_completion_queue_next(grpc_completion_queue *cc,
gpr_mu_unlock(GRPC_POLLSET_MU(&cc->pollset));
grpc_exec_ctx_flush(&exec_ctx);
gpr_mu_lock(GRPC_POLLSET_MU(&cc->pollset));
- continue;
+ } else {
+ grpc_pollset_work(&exec_ctx, &cc->pollset, &worker, now,
+ iteration_deadline);
}
- grpc_pollset_work(&exec_ctx, &cc->pollset, &worker, now,
- iteration_deadline);
}
GRPC_SURFACE_TRACE_RETURNED_EVENT(cc, &ret);
GRPC_CQ_INTERNAL_UNREF(cc, "next");
@@ -450,10 +450,10 @@ grpc_event grpc_completion_queue_pluck(grpc_completion_queue *cc, void *tag,
gpr_mu_unlock(GRPC_POLLSET_MU(&cc->pollset));
grpc_exec_ctx_flush(&exec_ctx);
gpr_mu_lock(GRPC_POLLSET_MU(&cc->pollset));
- continue;
+ } else {
+ grpc_pollset_work(&exec_ctx, &cc->pollset, &worker, now,
+ iteration_deadline);
}
- grpc_pollset_work(&exec_ctx, &cc->pollset, &worker, now,
- iteration_deadline);
del_plucker(cc, tag, &worker);
}
done: