[OpenJDK 2D-Dev] RFR: 8269223: -Xcheck:jni WARNINGs working with fonts on Linux [v4]

Phil Race prr at openjdk.java.net
Thu Aug 12 22:01:29 UTC 2021

On Mon, 19 Jul 2021 09:38:27 GMT, Maxim Kartashev <github.com+28651297+mkartashev at openjdk.org> wrote:

>> Added an `ExceptionCheck()` followed by `ExceptionDescribe()` and `ExceptionClear()` immediately after the Java calls made from the callback function `ReadTTFontFileFunc()` in `freetypeScaler.c`. 
>> The exception(s) need to be cleared because we're not returning immediately to Java that would've been able to handle them gracefully. And in order not to loose the exception entirely (even though the return value would also indicate an error condition), print out the exception with `ExceptionDescribe()` to aid in debugging.
> Maxim Kartashev has updated the pull request incrementally with one additional commit since the last revision:
>   Addressed PR comments
>   1. Added CHECK_NULL() to awt_Component.cpp

test/jdk/java/awt/font/JNICheck/FreeTypeScalerJNICheck.java line 29:

> 27:  * @summary Verifies that -Xcheck:jni issues no warnings from freetypeScaler.c
> 28:  * @library /test/lib
> 29:  * @key headful

What about this test is headful ?

test/jdk/java/awt/font/JNICheck/FreeTypeScalerJNICheck.java line 36:

> 34: import java.awt.geom.Rectangle2D;
> 35: import java.awt.image.*;
> 36: import java.io.*;

Can we get rid of all these wild card imports ?

test/jdk/java/awt/font/JNICheck/FreeTypeScalerJNICheck.java line 59:

> 57:         for (String ff : families)
> 58:         {
> 59:             Font font = Font.decode(ff);

Gosh, does anyone still use decode() ? I keep forgetting it exists.
You have all the family names, why not just new Font(ff, Font.PLAIN, 12) ?


PR: https://git.openjdk.java.net/jdk/pull/4572

More information about the 2d-dev mailing list