diff -r 20fe8cd3179d -r 45a9a7a49379 src/java.base/share/classes/java/io/ByteArrayOutputStream.java --- a/src/java.base/share/classes/java/io/ByteArrayOutputStream.java Fri Jan 05 12:45:52 2018 -0800 +++ b/src/java.base/share/classes/java/io/ByteArrayOutputStream.java Fri Jan 05 12:46:22 2018 -0800 @@ -27,6 +27,7 @@ import java.nio.charset.Charset; import java.util.Arrays; +import java.util.Objects; /** * This class implements an output stream in which the data is @@ -147,10 +148,7 @@ * @param len the number of bytes to write. */ public synchronized void write(byte b[], int off, int len) { - if ((off < 0) || (off > b.length) || (len < 0) || - ((off + len) - b.length > 0)) { - throw new IndexOutOfBoundsException(); - } + Objects.checkFromIndexSize(off, len, b.length); ensureCapacity(count + len); System.arraycopy(b, off, buf, count, len); count += len;