This is an automated email from the ASF dual-hosted git repository. ggregory pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-logging.git
The following commit(s) were added to refs/heads/master by this push: new f414bd4 Optimize log factory detection (#192) (#280) f414bd4 is described below commit f414bd4894265029a1a3e77951c736e673fbdaa3 Author: Björn Kautler <bjo...@kautler.net> AuthorDate: Thu Aug 15 13:25:10 2024 +0200 Optimize log factory detection (#192) (#280) --- src/main/java/org/apache/commons/logging/LogFactory.java | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/src/main/java/org/apache/commons/logging/LogFactory.java b/src/main/java/org/apache/commons/logging/LogFactory.java index 238ca9e..4f4a2ef 100644 --- a/src/main/java/org/apache/commons/logging/LogFactory.java +++ b/src/main/java/org/apache/commons/logging/LogFactory.java @@ -938,7 +938,7 @@ public abstract class LogFactory { if (factory == null) { factory = newStandardFactory(baseClassLoader); } - if (factory == null) { + if ((factory == null) && (baseClassLoader != thisClassLoaderRef.get())) { factory = newStandardFactory(thisClassLoaderRef.get()); } if (factory != null) { @@ -1217,13 +1217,12 @@ public abstract class LogFactory { } private static boolean isClassAvailable(final String className, final ClassLoader classLoader) { - final ClassLoader loader = LogFactory.class.getClassLoader(); - logDiagnostic("Checking if class '" + className + "' is available in class loader " + objectId(loader)); + logDiagnostic("Checking if class '" + className + "' is available in class loader " + objectId(classLoader)); try { Class.forName(className, true, classLoader); return true; } catch (final ClassNotFoundException | LinkageError e) { - logDiagnostic("Failed to load class '" + className + "' from class loader " + objectId(loader) + ": " + e.getMessage()); + logDiagnostic("Failed to load class '" + className + "' from class loader " + objectId(classLoader) + ": " + e.getMessage()); } return false; }