Repository: logging-log4j2
Updated Branches:
  refs/heads/master a481f1bd8 -> b7bc0378c


Refactor context map key creation.

Project: http://git-wip-us.apache.org/repos/asf/logging-log4j2/repo
Commit: http://git-wip-us.apache.org/repos/asf/logging-log4j2/commit/b7bc0378
Tree: http://git-wip-us.apache.org/repos/asf/logging-log4j2/tree/b7bc0378
Diff: http://git-wip-us.apache.org/repos/asf/logging-log4j2/diff/b7bc0378

Branch: refs/heads/master
Commit: b7bc0378c093eb38cf64919630f2582f8b601679
Parents: a481f1b
Author: Gary Gregory <[email protected]>
Authored: Sat Nov 22 23:07:30 2014 -0500
Committer: Gary Gregory <[email protected]>
Committed: Sat Nov 22 23:07:30 2014 -0500

----------------------------------------------------------------------
 .../log4j/core/selector/ClassLoaderContextSelector.java      | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/b7bc0378/log4j-core/src/main/java/org/apache/logging/log4j/core/selector/ClassLoaderContextSelector.java
----------------------------------------------------------------------
diff --git 
a/log4j-core/src/main/java/org/apache/logging/log4j/core/selector/ClassLoaderContextSelector.java
 
b/log4j-core/src/main/java/org/apache/logging/log4j/core/selector/ClassLoaderContextSelector.java
index dc15f9e..44b70ad 100644
--- 
a/log4j-core/src/main/java/org/apache/logging/log4j/core/selector/ClassLoaderContextSelector.java
+++ 
b/log4j-core/src/main/java/org/apache/logging/log4j/core/selector/ClassLoaderContextSelector.java
@@ -107,14 +107,14 @@ public class ClassLoaderContextSelector implements 
ContextSelector {
     private LoggerContext locateContext(final ClassLoader loaderOrNull, final 
URI configLocation) {
         // LOG4J2-477: class loader may be null
         final ClassLoader loader = loaderOrNull != null ? loaderOrNull : 
ClassLoader.getSystemClassLoader();
-        final String name = loader.toString();
+        final String name = toContextMapKey(loader);
         AtomicReference<WeakReference<LoggerContext>> ref = 
CONTEXT_MAP.get(name);
         if (ref == null) {
             if (configLocation == null) {
                 ClassLoader parent = loader.getParent();
                 while (parent != null) {
 
-                    ref = CONTEXT_MAP.get(parent.toString());
+                    ref = CONTEXT_MAP.get(toContextMapKey(parent));
                     if (ref != null) {
                         final WeakReference<LoggerContext> r = ref.get();
                         final LoggerContext ctx = r.get();
@@ -168,6 +168,10 @@ public class ClassLoaderContextSelector implements 
ContextSelector {
         return ctx;
     }
 
+    private String toContextMapKey(final ClassLoader loader) {
+        return loader.toString();
+    }
+
     protected LoggerContext getDefault() {
         final LoggerContext ctx = CONTEXT.get();
         if (ctx != null) {

Reply via email to