From 06816957be7a8dde366e46994f53a9bb02eab227 Mon Sep 17 00:00:00 2001 From: Chris R Date: Tue, 10 Dec 2019 11:53:48 -0800 Subject: [PATCH] React to runtime/594 Encoder.Convert change --- .../src/Extensions/HttpResponseWritingExtensions.cs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/Http/Http.Abstractions/src/Extensions/HttpResponseWritingExtensions.cs b/src/Http/Http.Abstractions/src/Extensions/HttpResponseWritingExtensions.cs index 7d4532c4c818..c94118a82edc 100644 --- a/src/Http/Http.Abstractions/src/Extensions/HttpResponseWritingExtensions.cs +++ b/src/Http/Http.Abstractions/src/Extensions/HttpResponseWritingExtensions.cs @@ -133,7 +133,8 @@ private static void WriteMultiSegmentEncoded(PipeWriter writer, string text, Enc // Therefore, we check encodedLength - totalBytesUsed too. while (!completed || encodedLength - totalBytesUsed != 0) { - encoder.Convert(source, destination, flush: source.Length == 0, out var charsUsed, out var bytesUsed, out completed); + // 'text' is a complete string, the converter should always flush its buffer. + encoder.Convert(source, destination, flush: true, out var charsUsed, out var bytesUsed, out completed); totalBytesUsed += bytesUsed; writer.Advance(bytesUsed);