What happened?
The stripUnsafeCharacters utility was sometimes "swallowing" large blocks of valid text. This occurred because the underlying stripVTControlCharacters function was misinterpreting certain C1 control characters (0x80-0x9F) as the start of unterminated escape sequences, causing it to discard all subsequent text in the string.
What did you expect to happen?
Only unsafe or non-printable characters should be removed; all valid user-visible text must be preserved.
Client information
All platforms
Additional context
Resolved by stripping C1 range characters (0x80-0x9F) early in the sanitization pipeline before passing the string to the VT escape sequence stripper.
What happened?
The
stripUnsafeCharactersutility was sometimes "swallowing" large blocks of valid text. This occurred because the underlyingstripVTControlCharactersfunction was misinterpreting certain C1 control characters (0x80-0x9F) as the start of unterminated escape sequences, causing it to discard all subsequent text in the string.What did you expect to happen?
Only unsafe or non-printable characters should be removed; all valid user-visible text must be preserved.
Client information
All platforms
Additional context
Resolved by stripping C1 range characters (0x80-0x9F) early in the sanitization pipeline before passing the string to the VT escape sequence stripper.