aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar Craig Tiller <craig.tiller@gmail.com>2015-11-06 14:48:46 -0800
committerGravatar Craig Tiller <craig.tiller@gmail.com>2015-11-06 14:48:46 -0800
commite9c216ee23297490de8c3350d0b2fa1115d5c3da (patch)
tree5d2e3bbc6ccc351da9fec106ce24c7344226d6ef
parentc4bb6e931f3d4fe7348d3fac0c65d079c9b3c949 (diff)
Sending empty trailing metadata to a closed stream is ok - it means close this already closed stream
-rw-r--r--src/core/transport/chttp2_transport.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/core/transport/chttp2_transport.c b/src/core/transport/chttp2_transport.c
index cbde3c5b86..f62294c7c5 100644
--- a/src/core/transport/chttp2_transport.c
+++ b/src/core/transport/chttp2_transport.c
@@ -806,7 +806,8 @@ static void perform_stream_op_locked(
}
if (stream_global->write_closed) {
grpc_chttp2_complete_closure_step(
- exec_ctx, &stream_global->send_trailing_metadata_finished, 0);
+ exec_ctx, &stream_global->send_trailing_metadata_finished,
+ grpc_metadata_batch_is_empty(op->send_trailing_metadata));
} else if (stream_global->id != 0) {
/* TODO(ctiller): check if there's flow control for any outstanding
bytes before going writable */