Hi Ichiroh,

This behavioral change is not intentional.  It's a bug introduced in JDK-4947890.  I create https://bugs.openjdk.java.net/browse/JDK-8275145 for this issue.

Thanks for the investigation.
Mandy

On 10/12/21 2:44 AM, Ichiroh Takiguchi wrote:
I have some questions for JDK-4947890。

One of app’s JVM was upgraded from JDK11 to JDK17.
Then the working behavior was changed on Windows 10 Multilingual User Interface (MUI). (Base was Japanese Windows 10, display language setting was English (United States))

In my investigation, the working behavior was changed by JDK12+b23.
  JDK-4947890 Minimize JNI upcalls in system-properties initialization [1]

Following change was applied on src/java.base/share/native/libjava/System.c,
From (not for MacOS platform) [2]
  Put sprops->sun_jnu_encoding into file.encoding system property
To [3]
  Put sprops->encoding into file.encoding system property

I checked JDK-4947890’s CSR JDK-8213895 [4]
  Modify JVM interface functions for property initialization

But it seems that above CSR does not mention such a significant specification change.

I checked JDK17u, same code was still used [5].

Questions:
I’d like to confirm
* This change was intentional or not ?
* We can revert tp JDK11’s spec ?

Thanks,
Ichiroh Takiguchi

[1] https://bugs.openjdk.java.net/browse/JDK-4947890
[2] http://hg.openjdk.java.net/jdk/jdk/rev/0bdbf854472f#l12.466
[3] http://hg.openjdk.java.net/jdk/jdk/rev/0bdbf854472f#l12.276
[4] https://bugs.openjdk.java.net/browse/JDK-8213895
[5] https://github.com/openjdk/jdk17u/blob/master/src/java.base/share/native/libjava/System.c#L149

Reply via email to