-
Bug
-
Resolution: Fixed
-
P2
-
None
-
None
-
b66
-
generic
-
generic
-
Verified
Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build |
---|---|---|---|---|---|---|
JDK-8084264 | emb-9 | Xueming Shen | P2 | Resolved | Fixed | team |
JDK-8129173 | 8u65 | Xueming Shen | P2 | Resolved | Fixed | b02 |
JDK-8080957 | 8u60 | Robert Mckenna | P3 | Resolved | Fixed | b20 |
JDK-8138241 | emb-8u65 | Unassigned | P2 | Resolved | Fixed | b02 |
JDK-8129697 | emb-8u60 | Xueming Shen | P2 | Resolved | Fixed | b20 |
At Google we noticed a change in behavior for the HKSCS charset family between jdk7 and jdk8. It looks like a bug in the jdk8 implementations.
Recipe:
-----
public class HKSCS {
public static void main(String[] args) throws Throwable {
StringBuilder sb = new StringBuilder();
sb.append((char) (Character.MIN_HIGH_SURROGATE + 67));
sb.append((char) (Character.MIN_LOW_SURROGATE + 67));
sb.append('a');
byte[] xs = sb.toString().getBytes("Big5-HKSCS");
for (byte x : xs) {
System.out.printf("%02x ", x & 0xff);
}
System.out.println();
}
}
---
Produces:
8a a6 61
in jdk7 and
8a a6
in jdk8, which seems wrong.
Recipe:
-----
public class HKSCS {
public static void main(String[] args) throws Throwable {
StringBuilder sb = new StringBuilder();
sb.append((char) (Character.MIN_HIGH_SURROGATE + 67));
sb.append((char) (Character.MIN_LOW_SURROGATE + 67));
sb.append('a');
byte[] xs = sb.toString().getBytes("Big5-HKSCS");
for (byte x : xs) {
System.out.printf("%02x ", x & 0xff);
}
System.out.println();
}
}
---
Produces:
8a a6 61
in jdk7 and
8a a6
in jdk8, which seems wrong.
- backported by
-
JDK-8084264 Coding regression in HKSCS charsets
-
- Resolved
-
-
JDK-8129173 Coding regression in HKSCS charsets
-
- Resolved
-
-
JDK-8129697 Coding regression in HKSCS charsets
-
- Resolved
-
-
JDK-8138241 Coding regression in HKSCS charsets
-
- Resolved
-
-
JDK-8080957 Coding regression in HKSCS charsets
-
- Resolved
-