RFR: 8369348: Failed assertion with scissor rect when Metal API Validation is enabled
Andy Goryachev
angorya at openjdk.org
Thu Feb 19 15:52:00 UTC 2026
On Wed, 18 Feb 2026 14:59:58 GMT, Ambarish Rapte <arapte at openjdk.org> wrote:
> Issue:
> This is a metal pipeline specific issue. When Metal API Validation is enabled an assertion is thrown due to invalid scissor rect being set. Please test the steps described in the ticket [JDK-8369348](https://bugs.openjdk.org/browse/JDK-8369348).
>
> Cause:
> MetalContext.setClipRect() method uses the negative x,y values and later performs a negative value check.
> This results in a clip rect with a width and height being larger than rtt size.
>
> Fix:
> Moving the negative value check before first use of x and y variables.
> Test is not included as, it requires manually enabling Metal API Validation i.e. METAL_DEVICE_WRAPPER_TYPE
>
> Verification:
> Verify the issue described in the [JDK-8369348](https://bugs.openjdk.org/browse/JDK-8369348).
> Perform general sanity test.
crashes without the fix and runs ok with the fix on macOS 26.3
modules/javafx.graphics/src/main/native-prism-mtl/MetalContext.m line 600:
> 598:
> 599: - (void) setClipRect:(int)x y:(int)y width:(int)width height:(int)height
> 600: {
do we need to update copyright year?
-------------
Marked as reviewed by angorya (Reviewer).
PR Review: https://git.openjdk.org/jfx/pull/2078#pullrequestreview-3826747535
PR Review Comment: https://git.openjdk.org/jfx/pull/2078#discussion_r2828635095
More information about the openjfx-dev
mailing list