From 05923eee98c2ca77a4ae51633e7f0784258d7c51 Mon Sep 17 00:00:00 2001 From: Craig Tiller Date: Fri, 12 Jun 2015 07:56:42 -0700 Subject: [PATCH] Tweaks --- src/core/transport/chttp2/parsing.c | 1 + src/core/transport/chttp2_transport.c | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/core/transport/chttp2/parsing.c b/src/core/transport/chttp2/parsing.c index 2a0cf2562fe..9a547ad3199 100644 --- a/src/core/transport/chttp2/parsing.c +++ b/src/core/transport/chttp2/parsing.c @@ -32,3 +32,4 @@ */ #include "src/core/transport/chttp2/internal.h" + diff --git a/src/core/transport/chttp2_transport.c b/src/core/transport/chttp2_transport.c index 96df8bdf274..d011e4e70ea 100644 --- a/src/core/transport/chttp2_transport.c +++ b/src/core/transport/chttp2_transport.c @@ -1649,14 +1649,14 @@ static void recv_data(void *tp, gpr_slice *slices, size_t nslices, case GRPC_ENDPOINT_CB_OK: lock(t); GPR_ASSERT(!t->parsing.executing); - t->parsing.executing = 1; if (t->error_state == ERROR_STATE_NONE) { + t->parsing.executing = 1; gpr_mu_unlock(&t->mu); for (i = 0; i < nslices && process_read(t, slices[i]); i++) ; + t->parsing.executing = 0; gpr_mu_lock(&t->mu); } - t->parsing.executing = 0; while ((s = stream_list_remove_head(t, MAYBE_FINISH_READ_AFTER_PARSE))) { maybe_finish_read(t, s, 0); }