String.toLowerCase/toUpperCase incorrect for supplementary characters
---------------------------------------------------------------------
Key: HARMONY-6649
URL: https://issues.apache.org/jira/browse/HARMONY-6649
Project: Harmony
Issue Type: Bug
Components: Classlib
Affects Versions: 5.0M15
Reporter: Robert Muir
Simple testcase:
{code}
assertEquals("\uD801\uDC44", "\uD801\uDC1C".toLowerCase());
{code}
Looking at modules/luni/src/main/java/java/lang/String.java, the problem is these methods
iterate code units (char) not codepoints (int),
and use Character.toLowerCase(char) and Character.toUpperCase(char), instead of Character.toLowerCase(int),
and Character.toUpperCase(int)
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
|