--- old/test/java/util/TimeZone/CheckDisplayNames.java 2016-05-30 20:01:18.525843264 +0530 +++ new/test/java/util/TimeZone/CheckDisplayNames.java 2016-05-30 20:01:18.017843264 +0530 @@ -23,7 +23,7 @@ /* * @test - * @bug 6405639 8008577 + * @bug 6405639 8008577 8151876 * @summary Validate timezone display names in * src/java.base/share/classes/sun/util/resources/TimeZoneNames.java. * @modules java.base/sun.util.resources @@ -53,6 +53,17 @@ private static Locale[] locales = Locale.getAvailableLocales(); private static String[] zones = TimeZone.getAvailableIDs(); + private static List newGMTzones = new ArrayList<>(); + + public static void setNewGMTzones() { + for (String zone : zones) { + String shortName = TimeZone.getTimeZone(zone).getDisplayName(false, TimeZone.SHORT); + String longName = TimeZone.getTimeZone(zone).getDisplayName(false, TimeZone.LONG); + if (!(zone.contains("GMT+") || zone.contains("GMT-")) && shortName.equals(longName)) { + newGMTzones.add(TimeZone.getTimeZone(zone).getDisplayName()); + } + } + } private static String[] zones_118 = { "ACT", "Australia/Darwin", @@ -96,6 +107,7 @@ src = true; } + setNewGMTzones(); testDisplayNames(); testRAWoffsetAndDisplayNames(); test118DisplayNames(); @@ -154,7 +166,7 @@ TimeZone tz = TimeZone.getTimeZone(id); String name = tz.getDisplayName(); - if (name == null || name.startsWith("GMT+") || name.startsWith("GMT-")) { + if ((name == null || name.startsWith("GMT+") || name.startsWith("GMT-")) && !newGMTzones.contains(name)) { if (src) { System.out.println("\t {\"" + tz.getID() + "\", " + "new String[] {\"Standard Time Name\", \"ST\",\n" +