aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core/iomgr
diff options
context:
space:
mode:
authorGravatar Craig Tiller <ctiller@google.com>2015-06-25 08:52:40 -0700
committerGravatar Craig Tiller <ctiller@google.com>2015-06-25 08:52:40 -0700
commit6e8c7e87ef5c63d76ee8ef6f5c348d7f517e54d8 (patch)
tree97ab5393011a2ef1370ca5959020a9f53d3bddd9 /src/core/iomgr
parentd13794332c13737f978b8b4fd56c82ea90c3c2ba (diff)
parent0bf7e48ade52eec336f50dee4c7d22eeb887bb8e (diff)
Merge github.com:grpc/grpc into oops-i-split-it-again
Diffstat (limited to 'src/core/iomgr')
-rw-r--r--src/core/iomgr/pollset_windows.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/core/iomgr/pollset_windows.c b/src/core/iomgr/pollset_windows.c
index d0507af960..926ee8fdd9 100644
--- a/src/core/iomgr/pollset_windows.c
+++ b/src/core/iomgr/pollset_windows.c
@@ -39,6 +39,7 @@
#include "src/core/iomgr/alarm_internal.h"
#include "src/core/iomgr/iomgr_internal.h"
+#include "src/core/iomgr/pollset.h"
#include "src/core/iomgr/pollset_windows.h"
/* There isn't really any such thing as a pollset under Windows, due to the
@@ -54,6 +55,7 @@ void grpc_pollset_init(grpc_pollset *pollset) {
void grpc_pollset_shutdown(grpc_pollset *pollset,
void (*shutdown_done)(void *arg),
void *shutdown_done_arg) {
+ grpc_pollset_kick(pollset);
shutdown_done(shutdown_done_arg);
}
@@ -68,10 +70,10 @@ int grpc_pollset_work(grpc_pollset *pollset, gpr_timespec deadline) {
if (gpr_time_cmp(now, deadline) > 0) {
return 0 /* GPR_FALSE */;
}
- if (grpc_maybe_call_delayed_callbacks(NULL, 1 /* GPR_TRUE */)) {
+ if (grpc_maybe_call_delayed_callbacks(&pollset->mu, 1 /* GPR_TRUE */)) {
return 1 /* GPR_TRUE */;
}
- if (grpc_alarm_check(NULL, now, &deadline)) {
+ if (grpc_alarm_check(&pollset->mu, now, &deadline)) {
return 1 /* GPR_TRUE */;
}
gpr_cv_wait(&pollset->cv, &pollset->mu, deadline);