Forráskód Böngészése

Fix flow control for unstarted streams

Craig Tiller 9 éve
szülő
commit
8a09593639
1 módosított fájl, 3 hozzáadás és 1 törlés
  1. 3 1
      src/core/transport/chttp2_transport.c

+ 3 - 1
src/core/transport/chttp2_transport.c

@@ -872,7 +872,9 @@ static void perform_stream_op_locked(
     GPR_ASSERT(stream_global->recv_message_ready == NULL);
     stream_global->recv_message_ready = op->recv_message_ready;
     stream_global->recv_message = op->recv_message;
-    if (stream_global->incoming_frames.head == NULL || stream_global->incoming_frames.head->is_tail) {
+    if (stream_global->id != 0 &&
+        (stream_global->incoming_frames.head == NULL ||
+         stream_global->incoming_frames.head->is_tail)) {
       incoming_byte_stream_update_flow_control(transport_global, stream_global, transport_global->stream_lookahead, 0);
     }
     grpc_chttp2_list_add_check_read_ops(transport_global, stream_global);