From a22ed3f094e18f1f82e1c6cead28d872d3c57e40 Mon Sep 17 00:00:00 2001 From: monojenkins Date: Wed, 28 Oct 2020 06:54:00 -0400 Subject: Fix potential crash for Encoder.Convert (#20522) GetByteCount will not return the right number of bytes needed, so GetBytes in Encoder.Convert will crash for some input Backport of #20271. Co-authored-by: jeffgoku --- mcs/class/I18N/CJK/GB18030Encoding.cs | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/mcs/class/I18N/CJK/GB18030Encoding.cs b/mcs/class/I18N/CJK/GB18030Encoding.cs index f62121e81f0..6f21c253475 100644 --- a/mcs/class/I18N/CJK/GB18030Encoding.cs +++ b/mcs/class/I18N/CJK/GB18030Encoding.cs @@ -430,10 +430,9 @@ namespace I18N.CJK } #else - public override int GetByteCount(char[] chars, int index, int count, bool refresh) + public override int GetByteCount(char[] chars, int start, int count, bool refresh) { - int start = 0; - int end = count; + int end = start + count; int ret = 0; while (start < end) { -- cgit v1.2.3