Review request: JDK-8016579 (process) IOException thrown by ProcessBuilder.start() method is incorrectly encoded
alexey.utkin at oracle.com
Mon Jul 15 09:41:02 UTC 2013
Here is the suggested fix:
We have THREE locales in action:
1. Thread default locale - dictates UNICODE-to-8bit conversion
2. OS locale that defines the message localization
3. The file name locale
Each locale could be an extended locale, that means that text cannot be
mapped to 8bit sequence without multibyte encoding. VM is ready for
that, if text is UTF-8.
The suggested fix does the work right from the beginning.
Unicode version of JVM call:
size_t os::lasterror(char* buf, size_t len)
was used as prototype for Unicode error message getter. It has to be
fixed accordingly as well as
size_t getLastErrorString(char *buf, size_t len)
The bug contains the attachment
that summarize the fix result in comparison with original implementation.
More information about the core-libs-dev