src/share/classes/java/util/TimeZone.java

Print this page
rev 5696 : 6336885: RFE: Locale Data Deployment Enhancements
4609153: Provide locale data for Indic locales
5104387: Support for gl_ES locale (galician language)
6337471: desktop/system locale preferences support
7056139: (cal) SPI support for locale-dependent Calendar parameters
7058206: Provide CalendarData SPI for week params and display field value names
7073852: Support multiple scripts for digits and decimal symbols per locale
7079560: [Fmt-Da] Context dependent month names support in SimpleDateFormat
7171324: getAvailableLocales() of locale sensitive services should return the actual availability of locales
7151414: (cal) Support calendar type identification
7168528: LocaleServiceProvider needs to be aware of Locale extensions
7171372: (cal) locale's default Calendar should be created if unknown calendar is specified
Summary: JEP 127: Improve Locale Data Packaging and Adopt Unicode CLDR Data (part 1 w/o packaging changes. by Naoto Sato and Masayoshi Okutsu)

@@ -44,11 +44,11 @@
 import java.security.PrivilegedAction;
 import java.util.concurrent.ConcurrentHashMap;
 import sun.misc.SharedSecrets;
 import sun.misc.JavaAWTAccess;
 import sun.security.action.GetPropertyAction;
-import sun.util.TimeZoneNameUtility;
+import sun.util.locale.provider.TimeZoneNameUtility;
 import sun.util.calendar.ZoneInfo;
 import sun.util.calendar.ZoneInfoFile;
 
 /**
  * <code>TimeZone</code> represents a time zone offset, and also figures out daylight

@@ -401,11 +401,11 @@
         }
 
         String id = getID();
         String[] names = getDisplayNames(id, locale);
         if (names == null) {
-            if (id.startsWith("GMT")) {
+            if (id.startsWith("GMT") && id.length() > 3) {
                 char sign = id.charAt(3);
                 if (sign == '+' || sign == '-') {
                     return id;
                 }
             }