diff --git a/src/share/classes/sun/nio/cs/Surrogate.java
b/src/share/classes/sun/nio/cs/Surrogate.java
--- a/src/share/classes/sun/nio/cs/Surrogate.java
+++ b/src/share/classes/sun/nio/cs/Surrogate.java
@@ -294,7 +294,7 @@
dst.put((char)uc);
error = null;
return 1;
- } else if (Character.isSupplementaryCodePoint(uc)) {
+ } else if (Character.isValidCodePoint(uc)) {
if (dst.remaining()< 2) {
error = CoderResult.OVERFLOW;
return -1;
@@ -338,7 +338,7 @@
da[dp] = (char)uc;
error = null;
return 1;
- } else if (Character.isSupplementaryCodePoint(uc)) {
+ } else if (Character.isValidCodePoint(uc)) {
if (dl - dp< 2) {
error = CoderResult.OVERFLOW;
return -1;
Have you searched for usages of Surrogate.isNeededFor() and
Character.isSupplementaryCodePoint() in sun.nio.cs.**.* and elsewhere?
If used paired with *.isBMP.* it should be replaced by
Surrogate.isBMP() / Character.isBMPCodePoint().
-Ulf
correction:
If used paired with *.isBMP.* it should be replaced by
Surrogate.is() / Character.isValidCodePoint().