diff --git a/src/core/ext/transport/chttp2/transport/chttp2_transport.c b/src/core/ext/transport/chttp2/transport/chttp2_transport.c
index 03b313ff4cc424de3e14a7deed26f2a2b40a7499..f375288577e98c9b5e3f0dcb8c32c4f3eb548dc6 100644
--- a/src/core/ext/transport/chttp2/transport/chttp2_transport.c
+++ b/src/core/ext/transport/chttp2/transport/chttp2_transport.c
@@ -949,7 +949,7 @@ static void perform_stream_op_locked(grpc_exec_ctx *exec_ctx, void *stream_op,
       s->fetching_slice_end_offset =
           (ssize_t)s->flow_controlled_buffer.length + (ssize_t)len;
       if (flags & GRPC_WRITE_BUFFER_HINT) {
-        s->fetched_send_message_length -= 65536;
+        s->fetching_slice_end_offset -= 65536;
       }
       continue_fetching_send_locked(exec_ctx, t, s);
       if (s->id != 0) {