On Mon, 23 Feb 2026 23:34:55 GMT, Phil Race <[email protected]> wrote:
>> This fix updates DataBuffer subclasses to actually adhere to their stated >> specifications by rejecting certain invalid parameters for constructors and >> getters and setters. >> A new egression test for each of the constructor and getter/setter cases is >> supplied. >> >> No existing regression tests fail with this change, and standard demos work. >> >> Problems caused by these changes are most likely to occur if the client has >> a bug such that >> - a client uses the constructors that accept an array and then supplies a >> "size" that is greater than the array. >> - a client uses the constructors that accept an array and then supplies a >> "size" that is less than the array and then uses getter/setters that are >> within the array but outside the range specified by size. >> >> Since very few clients (and just one case in the JDK that I found) even use >> these array constructors the changes are unlikely to make a difference to >> clients. >> >> The CSR is ready for review https://bugs.openjdk.org/browse/JDK-8378116 > > Phil Race has updated the pull request incrementally with one additional > commit since the last revision: > > 8377568 src/java.desktop/share/classes/java/awt/image/DataBuffer.java line 578: > 576: > 577: static final void checkArraySize(int size, int offset, int arrayLen) > { > 578: if (size <= 0 || (size + offset) > arrayLen || Suggestion: if (size <= 0 || (size + offset) > arrayLen || test/jdk/java/awt/image/DataBuffer/DataBufferConstructorTest.java line 717: > 715: // DataBufferFloat(byte[][] dataArray, int size) > 716: testFloatConstructor(nullFloatArrays, 0, > NullPointerException.class); > 717: testFloatConstructor(zeroFloatSubArrays, 0, > IllegalArgumentException.class); Suggestion: testFloatConstructor(zeroFloatSubArrays, 0, IllegalArgumentException.class); ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/29766#discussion_r2872145618 PR Review Comment: https://git.openjdk.org/jdk/pull/29766#discussion_r2872147128
