jdk/src/share/classes/java/util/logging/LogManager.java
changeset 2384 b3ba5fb77f89
parent 2 90ce3da70b43
child 3319 53a6d815c92f
--- a/jdk/src/share/classes/java/util/logging/LogManager.java	Fri Jan 30 22:30:32 2009 +0300
+++ b/jdk/src/share/classes/java/util/logging/LogManager.java	Wed Feb 04 14:06:18 2009 +0300
@@ -215,6 +215,14 @@
     // This private class is used as a shutdown hook.
     // It does a "reset" to close all open handlers.
     private class Cleaner extends Thread {
+
+        private Cleaner() {
+            /* Set context class loader to null in order to avoid
+             * keeping a strong reference to an application classloader.
+             */
+            this.setContextClassLoader(null);
+        }
+
         public void run() {
             // This is to ensure the LogManager.<clinit> is completed
             // before synchronized block. Otherwise deadlocks are possible.