aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core/iomgr/pollset_posix.c
diff options
context:
space:
mode:
authorGravatar Craig Tiller <craig.tiller@gmail.com>2015-02-11 18:19:24 -0800
committerGravatar Craig Tiller <craig.tiller@gmail.com>2015-02-11 18:19:24 -0800
commitd9dd8fee0485ee3b3c2c5caa1df39b7c97330ac2 (patch)
treed4bcdc37bbed36b9cdce6d507292add4c72ab4d5 /src/core/iomgr/pollset_posix.c
parentbd217574fb7ec65f899103eb4e1f8719b83fa43a (diff)
parentd8b88dec9182705356af8a862445c28c41ab35c8 (diff)
Merge github.com:grpc/grpc into c++api
Diffstat (limited to 'src/core/iomgr/pollset_posix.c')
-rw-r--r--src/core/iomgr/pollset_posix.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/src/core/iomgr/pollset_posix.c b/src/core/iomgr/pollset_posix.c
index 2837a0dff3..53c9806fb9 100644
--- a/src/core/iomgr/pollset_posix.c
+++ b/src/core/iomgr/pollset_posix.c
@@ -76,7 +76,7 @@ static void backup_poller(void *p) {
void grpc_pollset_kick(grpc_pollset *p) {
if (p->counter) {
- grpc_pollset_kick_kick(&p->kick_state);
+ p->vtable->kick(p);
}
}
@@ -84,6 +84,10 @@ void grpc_pollset_force_kick(grpc_pollset *p) {
grpc_pollset_kick_kick(&p->kick_state);
}
+static void kick_using_pollset_kick(grpc_pollset *p) {
+ grpc_pollset_kick_kick(&p->kick_state);
+}
+
/* global state management */
grpc_pollset *grpc_backup_pollset(void) { return &g_backup_pollset; }
@@ -186,7 +190,7 @@ static void empty_pollset_destroy(grpc_pollset *pollset) {}
static const grpc_pollset_vtable empty_pollset = {
empty_pollset_add_fd, empty_pollset_del_fd, empty_pollset_maybe_work,
- empty_pollset_destroy};
+ kick_using_pollset_kick, empty_pollset_destroy};
static void become_empty_pollset(grpc_pollset *pollset) {
pollset->vtable = &empty_pollset;
@@ -296,7 +300,8 @@ static void unary_poll_pollset_destroy(grpc_pollset *pollset) {
static const grpc_pollset_vtable unary_poll_pollset = {
unary_poll_pollset_add_fd, unary_poll_pollset_del_fd,
- unary_poll_pollset_maybe_work, unary_poll_pollset_destroy};
+ unary_poll_pollset_maybe_work, kick_using_pollset_kick,
+ unary_poll_pollset_destroy};
static void become_unary_pollset(grpc_pollset *pollset, grpc_fd *fd) {
pollset->vtable = &unary_poll_pollset;