diff options
author | Craig Tiller <ctiller@google.com> | 2015-10-05 11:21:49 -0700 |
---|---|---|
committer | Craig Tiller <ctiller@google.com> | 2015-10-05 11:21:49 -0700 |
commit | 91054e685594dcc0ab01b2353cb7f6a4acd0bb05 (patch) | |
tree | 6ebd19020d3995b95762c855f094eec5a38a1d88 /src | |
parent | 67eadf7c64b452b5edc630ce6c2140e3f38c2d62 (diff) | |
parent | c04610357ca9c7bfc993849a150c40872a13f50a (diff) |
Merge pull request #3627 from yang-g/flake2
Deflake end2end_test
Diffstat (limited to 'src')
-rw-r--r-- | src/core/iomgr/pollset_posix.c | 1 | ||||
-rw-r--r-- | src/core/transport/chttp2_transport.c | 2 |
2 files changed, 2 insertions, 1 deletions
diff --git a/src/core/iomgr/pollset_posix.c b/src/core/iomgr/pollset_posix.c index 464c1f6ae3..9042827484 100644 --- a/src/core/iomgr/pollset_posix.c +++ b/src/core/iomgr/pollset_posix.c @@ -352,6 +352,7 @@ static void basic_do_promote(grpc_exec_ctx *exec_ctx, void *args, int success) { if (pollset->shutting_down) { /* We don't care about this pollset anymore. */ if (pollset->in_flight_cbs == 0 && !pollset->called_shutdown) { + pollset->called_shutdown = 1; finish_shutdown(exec_ctx, pollset); } } else if (grpc_fd_is_orphaned(fd)) { diff --git a/src/core/transport/chttp2_transport.c b/src/core/transport/chttp2_transport.c index 0437dbfadf..de74379546 100644 --- a/src/core/transport/chttp2_transport.c +++ b/src/core/transport/chttp2_transport.c @@ -1136,7 +1136,7 @@ static void recv_data(grpc_exec_ctx *exec_ctx, void *tp, int success) { grpc_chttp2_publish_reads(exec_ctx, &t->global, &t->parsing); t->parsing_active = 0; } - if (!success || i != t->read_buffer.count) { + if (!success || i != t->read_buffer.count || t->closed) { drop_connection(exec_ctx, t); read_error_locked(exec_ctx, t); } else if (!t->closed) { |