8202329: [AIX] Fix codepage mappings for IBM-943 and Big5

Reviewed-by: simonis, stuefe
This commit is contained in:
Bhaktavatsal R Maram 2018-06-12 13:00:50 +05:30 committed by Volker Simonis
parent 4f38d4ff72
commit dc7d03e19d
2 changed files with 67 additions and 2 deletions

View file

@ -1,5 +1,5 @@
/*
* Copyright (c) 1998, 2016, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1998, 2018, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -297,7 +297,23 @@ static int ParseLocale(JNIEnv* env, int cat, char ** std_language, char ** std_s
if (strcmp(p, "EUC-JP") == 0) {
*std_encoding = "EUC-JP-LINUX";
}
#else
#endif
#ifdef _AIX
if (strcmp(p, "big5") == 0) {
/* On AIX Traditional Chinese Big5 codeset is mapped to IBM-950 */
*std_encoding = "IBM-950";
} else if (strcmp(p, "IBM-943") == 0) {
/*
* On AIX, IBM-943 is mapped to IBM-943C in which symbol 'yen' and
* 'overline' are replaced with 'backslash' and 'tilde' from ASCII
* making first 96 code points same as ASCII.
*/
*std_encoding = "IBM-943C";
}
#endif
#ifdef __solaris__
if (strcmp(p,"eucJP") == 0) {
/* For Solaris use customized vendor defined character
* customized EUC-JP converter