You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@karaf.apache.org by jg...@apache.org on 2010/09/13 23:07:15 UTC
svn commit: r996689 -
/karaf/trunk/exception/src/main/java/java/lang/Exception.java
Author: jgoodyear
Date: Mon Sep 13 21:07:15 2010
New Revision: 996689
URL: http://svn.apache.org/viewvc?rev=996689&view=rev
Log:
[KARAF-189] Java endorsed dirs on AIX (IBM JVM)
Switched SecurityManagerEx to lazy initialization for IBM Java 6 compatibility.
Modified:
karaf/trunk/exception/src/main/java/java/lang/Exception.java
Modified: karaf/trunk/exception/src/main/java/java/lang/Exception.java
URL: http://svn.apache.org/viewvc/karaf/trunk/exception/src/main/java/java/lang/Exception.java?rev=996689&r1=996688&r2=996689&view=diff
==============================================================================
--- karaf/trunk/exception/src/main/java/java/lang/Exception.java (original)
+++ karaf/trunk/exception/src/main/java/java/lang/Exception.java Mon Sep 13 21:07:15 2010
@@ -30,7 +30,9 @@ package java.lang;
public class Exception extends Throwable {
private static final long serialVersionUID = -3387516993124229948L;
- private transient Class[] classContext = sm.getThrowableContext(this);
+ private static volatile SecurityManagerEx sm;
+
+ private transient Class[] classContext = SecurityManagerEx.getSm().getThrowableContext(this);
/**
* Constructs a new {@code Exception} that includes the current stack trace.
@@ -78,10 +80,16 @@ public class Exception extends Throwable
return classContext;
}
- private static final SecurityManagerEx sm = new SecurityManagerEx();
-
- static class SecurityManagerEx extends SecurityManager
+ private static class SecurityManagerEx extends SecurityManager
{
+
+ private static SecurityManagerEx getSm() {
+ if (sm == null) {
+ sm = new SecurityManagerEx();
+ }
+ return sm;
+ }
+
public Class[] getClassContext()
{
return super.getClassContext();