< prev index next >
src/java.base/share/classes/java/nio/charset/Charset.java
Print this page
rev 17455 : 8184665: Skip name and alias checks for standard Charsets
Reviewed-by: sherman, rriggs
*** 633,646 ****
*
* @throws IllegalCharsetNameException
* If the canonical name or any of the aliases are illegal
*/
protected Charset(String canonicalName, String[] aliases) {
- checkName(canonicalName);
String[] as = Objects.requireNonNullElse(aliases, zeroAliases);
! for (int i = 0; i < as.length; i++)
checkName(as[i]);
this.name = canonicalName;
this.aliases = as;
}
/**
--- 633,654 ----
*
* @throws IllegalCharsetNameException
* If the canonical name or any of the aliases are illegal
*/
protected Charset(String canonicalName, String[] aliases) {
String[] as = Objects.requireNonNullElse(aliases, zeroAliases);
!
! // Skip checks for the standard, built-in Charsets we always load
! // during initialization.
! if (!StandardCharsets.ISO_8859_1.equals(canonicalName)
! && !StandardCharsets.US_ASCII.equals(canonicalName)
! && !StandardCharsets.UTF_8.equals(canonicalName)) {
! checkName(canonicalName);
! for (int i = 0; i < as.length; i++) {
checkName(as[i]);
+ }
+ }
this.name = canonicalName;
this.aliases = as;
}
/**
< prev index next >