On Mon, 9 Jun 2025 15:34:31 GMT, Kevin Rushforth <k...@openjdk.org> wrote:
>> modules/javafx.graphics/src/main/java/com/sun/marlin/OffHeapArray.java line >> 79: >> >>> 77: * @return number of used bytes >>> 78: */ >>> 79: int getUsed() { >> >> wait, length is `long`, but used is `int`? > > I noticed this too. This is preexisting, so I don't want to change it as part > of this PR (to minimize changes). It might or might not be worth a follow-up. [JDK-8359259](https://bugs.openjdk.org/browse/JDK-8359259) >> modules/javafx.graphics/src/main/java/com/sun/marlin/OffHeapArray.java line >> 97: >> >>> 95: */ >>> 96: void incrementUsed(int increment) { >>> 97: this.used += increment; >> >> if used > 2B, it will overflow, right? > > Yes. It seems worth checking and throw an exception. Other invariants could > also be enforced such as used <= length. > > I'll file a follow-up issue for this, since this behavior is preexisting. [JDK-8359259](https://bugs.openjdk.org/browse/JDK-8359259) >> modules/javafx.graphics/src/main/java/com/sun/marlin/RendererNoAA.java line >> 379: >> >>> 377: // note: throw IOOB if neededSize > 2Gb: >>> 378: final long edgeNewSize = ArrayCacheConst.getNewLargeSize( >>> 379: _edges.getLength(), >> >> L377 is unclear - is this a TODO to throw IOOBE or a description of what >> would happen? >> (this is a separate issue from FFM changes, really) > > Yes, this is preexisting and not something to look at as part of this PR. [JDK-8359259](https://bugs.openjdk.org/browse/JDK-8359259) ------------- PR Review Comment: https://git.openjdk.org/jfx/pull/1814#discussion_r2140969093 PR Review Comment: https://git.openjdk.org/jfx/pull/1814#discussion_r2140969190 PR Review Comment: https://git.openjdk.org/jfx/pull/1814#discussion_r2140968533