An infinite loop occurs in FastByteArrayOutputStream.java.
The conditions which an infinite loop generates are as follows.
- The character code of input data is UTF-8.
- The length of input data is longer than 16 KB.
- There is a character of a surrogate pair after 16 KB of input data.
- Example of input data:
The input data to reproduce repeats 3 bytes of character 5462 times, and the character of a surrogate pair appears behind that.
- Added to 2014/8/22
An infinite loop occurs with an include tag.
The example data as follows.
— Content of infinite.jsp —
— end of infinite.jsp —
Is clean of the out buffer necessary for decodeAndWritw method after the output in an out buffer?