RFR: 8261920: [AIX] jshell command throws java.io.IOError on non English locales

Ichiroh Takiguchi itakiguchi at openjdk.java.net
Thu Feb 18 04:05:53 UTC 2021


jshell uses JLine library.
JLine checks word "columns" in "stty -a" command output to find out terminal size.
The word "columns" was translated on AIX's Japanese locale (other locales also), so above error was happened.

OpenJDK for AIX developer could not find this issue because he/she requires AIX Toolbox's coreutils rpm package as build tools.
Another stty command is in /opt/freeware/bin/stty, it's in coreutils rpm package.

Standard users' system may not have coreutils rpm package or they may not set /opt/freeware/bin in PATH environment variable.
stty command should be executed with C locale to get English message.
Additionally, JLine library requires -F option. AIX's stty command does not support -F option,
but stty command which is in coreutils rpm package supports -F option.
On standard jshell usage, -F option may not be used. But when the system has coreutils rpm package, jshell should use this one.

-------------

Commit messages:
 - AIX stty command should be executed on C locale to get English message

Changes: https://git.openjdk.java.net/jdk/pull/2622/files
 Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=2622&range=00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8261920
  Stats: 8 lines in 2 files changed: 8 ins; 0 del; 0 mod
  Patch: https://git.openjdk.java.net/jdk/pull/2622.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/2622/head:pull/2622

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


More information about the kulla-dev mailing list