On Wed, 6 Dec 2023 23:31:26 GMT, Roger Riggs <rri...@openjdk.org> wrote:

> In the compact string implementation of non-latin1 (UTF16) strings the length 
> is constrained by VM implementation limit on the size a byte array that can 
> be allocated. To produce a useful exception the implementation checks the 
> string size against the maximum byte array size. The exception message is 
> correct
> 
> "UTF16 String size is " + len + ", should be less than or equal to " + 
> MAX_LENGTH
> 
> The code should match the message, otherwise the exception thrown is: 
> 
> java.lang.OutOfMemoryError: Requested array size exceeds VM limit

src/java.base/share/classes/java/lang/StringUTF16.java line 59:

> 57:         if (len >= MAX_LENGTH) {
> 58:             throw new OutOfMemoryError("UTF16 String size is " + len +
> 59:                                        ", should be less than or equal to 
> " + MAX_LENGTH);

Suggestion:

                                       ", should be less than " + MAX_LENGTH);

-------------

PR Review Comment: https://git.openjdk.org/jdk/pull/17008#discussion_r1420747765

Reply via email to