One comment:

src/java.base/share/classes/java/util/regex/Pattern.java

--- 1679,1690 ----
          i += 2;
          int newTempLen;
          try {
newTempLen = Math.addExact(j + 2, Math.multiplyExact(3, pLen - i));
          } catch (ArithmeticException ae) {
!             throw new
! OutOfMemoryError("Unable to allocate buffer for \\Q...\\E sequence");
          }

"Unable to allocate buffer" seems vague in the context of an OOME. If the problem is trying to create a too-large array, maybe something like, "Buffer for \\Q...\\E sequence would exceed maximum array size".

-Brent

On 6/1/20 5:48 AM, Jim Laskey wrote:
Cleans up every case of OutOfMemoryError without a message. Some logic changes 
in String::repeat and ByteArrayChannel:: hugeCapacity.

Thank you.

Cheers,

-- Jim

webrev: http://cr.openjdk.java.net/~jlaskey/8230744/webrev-00/index.html 
<http://cr.openjdk.java.net/~jlaskey/8230744/webrev-00/index.html>
jbs: https://bugs.openjdk.java.net/browse/JDK-8230744 
<https://bugs.openjdk.java.net/browse/JDK-8230744>


Reply via email to