src/share/classes/java/util/TimeZone.java
Print this page
@@ -726,24 +726,25 @@
* This works around a build time issue.
*/
private static TimeZone getDefaultInAppContext() {
// JavaAWTAccess provides access implementation-private methods without using reflection.
JavaAWTAccess javaAWTAccess = SharedSecrets.getJavaAWTAccess();
- if (javaAWTAccess == null) {
- return mainAppContextDefault;
- } else {
+ if (System.getSecurityManager() != null && javaAWTAccess != null) {
if (!javaAWTAccess.isDisposed()) {
TimeZone tz = (TimeZone)
javaAWTAccess.get(TimeZone.class);
if (tz == null && javaAWTAccess.isMainAppContext()) {
return mainAppContextDefault;
} else {
return tz;
}
+ } else {
+ return null;
}
+ } else {
+ return mainAppContextDefault;
}
- return null;
}
/**
* Sets the default TimeZone in the AppContext to the given
* tz. null is handled special: do nothing if any AppContext
@@ -756,19 +757,19 @@
* This works around a build time issue.
*/
private static void setDefaultInAppContext(TimeZone tz) {
// JavaAWTAccess provides access implementation-private methods without using reflection.
JavaAWTAccess javaAWTAccess = SharedSecrets.getJavaAWTAccess();
- if (javaAWTAccess == null) {
- mainAppContextDefault = tz;
- } else {
+ if (System.getSecurityManager() != null && javaAWTAccess != null) {
if (!javaAWTAccess.isDisposed()) {
javaAWTAccess.put(TimeZone.class, tz);
if (javaAWTAccess.isMainAppContext()) {
mainAppContextDefault = null;
}
}
+ } else {
+ mainAppContextDefault = tz;
}
}
/**
* Returns true if this zone has the same rule and offset as another zone.