RFR 8198697: Simplify platform encoding initialization tweak

Roger Riggs Roger.Riggs at Oracle.com
Wed Feb 28 14:45:37 UTC 2018


In an effort to untangle some of the issues with property initialization 
I was looking
at the platform encoding initialization and found a simplification.

Currently, the initialization occurs as a side effect of the first call 
to JNU_NewStringPlatform and
involves a upcall to get sun.jnu.encoding from the system properties.  
The value is cached for later use.

The native System.initProperties determines the platform specific 
encoding via java_props_md.c and does an upcall to set the 
sun.jnu.encoding system property, taking care to do it before the first 
string that needs platform encoding.

The change directly initializes the platform encoding fast path before 
it is needed to encode platform strings.
And moves the setting sun.jnu.encoding system property after the command 
line arguments are inserted
keeping it from being overridden by -D on the command line that can only 
confuse confusion
with code that later reads the property.

Please review and comment.



Thanks, Roger

More information about the core-libs-dev mailing list