fix: Fixes an edge case in GetString that can cause a crash while parsing (#2155)
This commit is contained in:
parent
872de8d095
commit
5a23d9f6f8
1 changed files with 10 additions and 2 deletions
|
|
@ -147,8 +147,16 @@ public static class TextEncoding
|
|||
while (index != -1)
|
||||
{
|
||||
sb.Append(chars[..index]);
|
||||
chars = chars[(index + 1)..];
|
||||
index = chars.IndexOfAnyExceptInRange((char)0x20, (char)0xFFFD);
|
||||
|
||||
if (index + 1 < chars.Length)
|
||||
{
|
||||
chars = chars[(index + 1)..];
|
||||
index = chars.IndexOfAnyExceptInRange((char)0x20, (char)0xFFFD);
|
||||
}
|
||||
else
|
||||
{
|
||||
index = -1;
|
||||
}
|
||||
}
|
||||
|
||||
if (chars.Length > 0)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue