Author: ieb
Date: Mon Feb 25 03:53:04 2013
New Revision: 1449584
URL: http://svn.apache.org/r1449584
Log:
SLING-2744 fixed double null check in sychronized.
Modified:
sling/trunk/contrib/scripting/jsp-taglib-atom/src/main/java/org/apache/sling/atom/taglib/internal/AbderaActivator.java
Modified:
sling/trunk/contrib/scripting/jsp-taglib-atom/src/main/java/org/apache/sling/atom/taglib/internal/AbderaActivator.java
URL:
http://svn.apache.org/viewvc/sling/trunk/contrib/scripting/jsp-taglib-atom/src/main/java/org/apache/sling/atom/taglib/internal/AbderaActivator.java?rev=1449584&r1=1449583&r2=1449584&view=diff
==============================================================================
---
sling/trunk/contrib/scripting/jsp-taglib-atom/src/main/java/org/apache/sling/atom/taglib/internal/AbderaActivator.java
(original)
+++
sling/trunk/contrib/scripting/jsp-taglib-atom/src/main/java/org/apache/sling/atom/taglib/internal/AbderaActivator.java
Mon Feb 25 03:53:04 2013
@@ -33,27 +33,25 @@ public abstract class AbderaActivator {
private static final Object LOCK = new Object();
public static Abdera getAbdera() throws JspException {
- if (ABDERA == null) {
- synchronized ( LOCK ) {
- if ( ABDERA == null ) {
- final ClassLoader classLoader =
Thread.currentThread().getContextClassLoader();
- final ClassLoader osgiClassloader =
AbderaActivator.class.getClassLoader();
-
Thread.currentThread().setContextClassLoader(osgiClassloader);
+ synchronized ( LOCK ) {
+ if ( ABDERA == null ) {
+ final ClassLoader classLoader =
Thread.currentThread().getContextClassLoader();
+ final ClassLoader osgiClassloader =
AbderaActivator.class.getClassLoader();
+ Thread.currentThread().setContextClassLoader(osgiClassloader);
- try {
+ try {
- final Abdera a = new Abdera();
- final Factory f = a.getFactory();
- if (f instanceof FOMFactory) {
- FOMFactory ff = (FOMFactory) f;
- ff.registerExtension(new MediaExtensionFactory());
- ff.registerExtension(new
OpenSearchExtensionFactory());
- }
- ABDERA = a;
-
- } finally {
-
Thread.currentThread().setContextClassLoader(classLoader);
+ final Abdera a = new Abdera();
+ final Factory f = a.getFactory();
+ if (f instanceof FOMFactory) {
+ FOMFactory ff = (FOMFactory) f;
+ ff.registerExtension(new MediaExtensionFactory());
+ ff.registerExtension(new OpenSearchExtensionFactory());
}
+ ABDERA = a;
+
+ } finally {
+ Thread.currentThread().setContextClassLoader(classLoader);
}
}
}