diff options
Diffstat (limited to 'src/core/ext')
-rw-r--r-- | src/core/ext/transport/chttp2/transport/chttp2_transport.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/core/ext/transport/chttp2/transport/chttp2_transport.c b/src/core/ext/transport/chttp2/transport/chttp2_transport.c index b4cd185e62..01507f5ca6 100644 --- a/src/core/ext/transport/chttp2/transport/chttp2_transport.c +++ b/src/core/ext/transport/chttp2/transport/chttp2_transport.c @@ -1159,6 +1159,10 @@ static void cancel_from_api(grpc_exec_ctx *exec_ctx, grpc_chttp2_fake_status(exec_ctx, transport_global, stream_global, status, NULL); } + if (status != GRPC_STATUS_OK && !stream_global->seen_error) { + stream_global->seen_error = 1; + grpc_chttp2_list_add_check_read_ops(transport_global, stream_global); + } grpc_chttp2_mark_stream_closed(exec_ctx, transport_global, stream_global, 1, 1); } |