8206980: ZonedDateTime could not parse timezone name with zh_CN locale correctly

Reviewed-by: rriggs
This commit is contained in:
Naoto Sato 2018-07-11 14:47:43 -07:00
parent 0922828415
commit fa3591db42
2 changed files with 11 additions and 7 deletions

View file

@ -130,7 +130,8 @@ public class CLDRTimeZoneNameProviderImpl extends TimeZoneNameProviderImpl {
// Fill in for the empty names. // Fill in for the empty names.
// English names are prefilled for performance. // English names are prefilled for performance.
if (locale.getLanguage() != "en") { if (!locale.equals(Locale.ENGLISH) &&
!locale.equals(Locale.US)) {
for (int zoneIndex = 0; zoneIndex < ret.length; zoneIndex++) { for (int zoneIndex = 0; zoneIndex < ret.length; zoneIndex++) {
deriveFallbackNames(ret[zoneIndex], locale); deriveFallbackNames(ret[zoneIndex], locale);
} }

View file

@ -49,7 +49,7 @@ import org.testng.annotations.Test;
/* /*
* @test * @test
* @bug 8081022 8151876 8166875 8189784 * @bug 8081022 8151876 8166875 8189784 8206980
* @key randomness * @key randomness
*/ */
@ -162,6 +162,9 @@ public class TestZoneTextPrinterParser extends AbstractTestPrinterParser {
{"America/Juneau", "AKDT", none, Locale.ENGLISH, TextStyle.SHORT}, {"America/Juneau", "AKDT", none, Locale.ENGLISH, TextStyle.SHORT},
{"Pacific/Honolulu", "HST", none, Locale.ENGLISH, TextStyle.SHORT}, {"Pacific/Honolulu", "HST", none, Locale.ENGLISH, TextStyle.SHORT},
{"America/Halifax", "AST", none, Locale.ENGLISH, TextStyle.SHORT}, {"America/Halifax", "AST", none, Locale.ENGLISH, TextStyle.SHORT},
{"Z", "Z", none, Locale.ENGLISH, TextStyle.SHORT},
{"Z", "Z", none, Locale.US, TextStyle.SHORT},
{"Z", "Z", none, Locale.CANADA, TextStyle.SHORT},
}; };
} }