Author: gnodet
Date: Tue Sep 21 12:02:31 2010
New Revision: 999360
URL: http://svn.apache.org/viewvc?rev=999360&view=rev
Log:
[KARAF-189] Java endorsed dirs on AIX (IBM JVM)
Switched SecurityManagerEx to lazy initialization for IBM Java 6 compatibility.
Modified:
karaf/branches/karaf-2.0.x/exception/src/main/java/java/lang/Exception.java
Modified:
karaf/branches/karaf-2.0.x/exception/src/main/java/java/lang/Exception.java
URL:
http://svn.apache.org/viewvc/karaf/branches/karaf-2.0.x/exception/src/main/java/java/lang/Exception.java?rev=999360&r1=999359&r2=999360&view=diff
==============================================================================
--- karaf/branches/karaf-2.0.x/exception/src/main/java/java/lang/Exception.java
(original)
+++ karaf/branches/karaf-2.0.x/exception/src/main/java/java/lang/Exception.java
Tue Sep 21 12:02:31 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();