diff --git a/src/core/transport/chttp2/parsing.c b/src/core/transport/chttp2/parsing.c index a29987a05ad3e543ac6d628e043bce193a600cd2..5d3dfe2286c1bda3e2863bc2b699350a054244a3 100644 --- a/src/core/transport/chttp2/parsing.c +++ b/src/core/transport/chttp2/parsing.c @@ -194,8 +194,9 @@ void grpc_chttp2_publish_reads( GRPC_CHTTP2_FLOWCTL_TRACE_STREAM( "parsed", transport_parsing, stream_parsing, outgoing_window_update, -(gpr_int64)stream_parsing->outgoing_window_update); + GPR_ASSERT(stream_parsing->outgoing_window_update <= GPR_UINT32_MAX); stream_global->outgoing_window += - (gpr_uint32)stream_global->outgoing_window; + (gpr_uint32)stream_parsing->outgoing_window_update; stream_parsing->outgoing_window_update = 0; is_zero = stream_global->outgoing_window <= 0; if (was_zero && !is_zero) {