RFR: 8368882: NPE during text drawing on machine with JP locale
Sergey Nazarkin
snazarki at openjdk.org
Thu Oct 2 13:13:27 UTC 2025
On Wed, 1 Oct 2025 19:00:36 GMT, Sergey Bylokhov <serb at openjdk.org> wrote:
>> There is a reproducible bug in symbol rendering on Windows machines with [particular](https://github.com/openjdk/jdk/blob/9d71af108ea2cc3682607527246d60a19fd820ba/src/java.desktop/windows/native/libawt/windows/awt_Win32GraphicsEnv.cpp#L244) default locales. This changeset fixes the deferred font initialisation request, which now skips the last font in the list.
>>
>> The test (attached to the jira) was performed on a Windows 11 machine with the Japanese locale set as the default. Without the fix, it fails with an NPE. With the fix it displays a window showing glyphs drawn by all the fonts accessible from the Java application.
>
> src/java.desktop/share/classes/sun/font/CompositeFont.java line 117:
>
>> 115: deferredInitialisation = new boolean[numSlots];
>> 116: if (defer) {
>> 117: for (int i=0; i<numSlots-1; i++) {
>
> Do we have any jtreg tests that can reproduce the bug in the JP locale? If not, it would be good to create one based on the test described in the bug report.
The fallback font may have legal issues and installing eudc.ttf on the test machine may be challenging. I'll try to reproduce the issue using the EN_US locale and an open-source font.
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/27551#discussion_r2398794300
More information about the client-libs-dev
mailing list