Fix LOG4J2-862 for real this time.

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

Branch: refs/heads/master
Commit: d80c6a20824bd13090bf80d415c02b39c53e8f21
Parents: ba39c4e
Author: Matt Sicker <[email protected]>
Authored: Mon Sep 29 21:31:18 2014 -0500
Committer: Matt Sicker <[email protected]>
Committed: Mon Sep 29 21:31:18 2014 -0500

----------------------------------------------------------------------
 .../apache/logging/log4j/util/ProviderUtil.java  | 19 ++-----------------
 1 file changed, 2 insertions(+), 17 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/d80c6a20/log4j-api/src/main/java/org/apache/logging/log4j/util/ProviderUtil.java
----------------------------------------------------------------------
diff --git 
a/log4j-api/src/main/java/org/apache/logging/log4j/util/ProviderUtil.java 
b/log4j-api/src/main/java/org/apache/logging/log4j/util/ProviderUtil.java
index 4ad71c9..bc3f774 100644
--- a/log4j-api/src/main/java/org/apache/logging/log4j/util/ProviderUtil.java
+++ b/log4j-api/src/main/java/org/apache/logging/log4j/util/ProviderUtil.java
@@ -19,7 +19,6 @@ package org.apache.logging.log4j.util;
 import java.io.IOException;
 import java.net.URL;
 import java.util.Collection;
-import java.util.Enumeration;
 import java.util.HashSet;
 import java.util.Properties;
 import java.util.concurrent.locks.Lock;
@@ -53,22 +52,8 @@ public final class ProviderUtil {
     private static volatile ProviderUtil INSTANCE;
 
     private ProviderUtil() {
-        final ClassLoader cl = findClassLoader();
-        Enumeration<URL> enumResources = null;
-        try {
-            enumResources = cl.getResources(PROVIDER_RESOURCE);
-        } catch (final IOException e) {
-            LOGGER.fatal("Unable to locate {}", PROVIDER_RESOURCE, e);
-        }
-        loadProviders(enumResources, cl);
-    }
-
-    protected static void loadProviders(final Enumeration<URL> enumResources, 
final ClassLoader cl) {
-        if (enumResources != null) {
-            while (enumResources.hasMoreElements()) {
-                final URL url = enumResources.nextElement();
-                loadProvider(url, cl);
-            }
+        for (LoaderUtil.UrlResource resource : 
LoaderUtil.findUrlResources(PROVIDER_RESOURCE)) {
+            loadProvider(resource.getUrl(), resource.getClassLoader());
         }
     }
 

Reply via email to