[jboss-svn-commits] JBoss Common SVN: r3628 - common-old/branches/Branch_1_2/src/main/org/jboss/util.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Mon Nov 2 14:00:45 EST 2009
Author: dimitris at jboss.org
Date: 2009-11-02 14:00:44 -0500 (Mon, 02 Nov 2009)
New Revision: 3628
Modified:
common-old/branches/Branch_1_2/src/main/org/jboss/util/NestedThrowable.java
Log:
JBCOMMON-35, NestedThrowable Class when accessed concurrently by 2 Threads cause deadlock
Modified: common-old/branches/Branch_1_2/src/main/org/jboss/util/NestedThrowable.java
===================================================================
--- common-old/branches/Branch_1_2/src/main/org/jboss/util/NestedThrowable.java 2009-11-02 11:31:52 UTC (rev 3627)
+++ common-old/branches/Branch_1_2/src/main/org/jboss/util/NestedThrowable.java 2009-11-02 19:00:44 UTC (rev 3628)
@@ -110,7 +110,9 @@
final class Util
{
// Can not be final due to init bug, see getLogger() for details
- private static Logger log = Logger.getLogger(NestedThrowable.class);
+ // This variable should not be accessed directly so the getLogger method
+ // will be able to check it is not null.
+ private static Logger pvtLog = null;
/**
* Something is very broken with class nesting, which can sometimes
@@ -122,10 +124,10 @@
*/
private static Logger getLogger()
{
- if (log == null)
- log = Logger.getLogger(NestedThrowable.class);
+ if (pvtLog == null)
+ pvtLog = Logger.getLogger(NestedThrowable.class);
- return log;
+ return pvtLog;
}
/** A helper to get a boolean property. */
@@ -135,7 +137,7 @@
String value = System.getProperty(name, String.valueOf(defaultValue));
// HACK see getLogger() for details
- log = getLogger();
+ Logger log = getLogger();
log.debug(name + "=" + value);
@@ -160,7 +162,7 @@
if (parentType.isAssignableFrom(childType)) {
// HACK see getLogger() for details
- log = getLogger();
+ Logger log = getLogger();
log.warn("Duplicate throwable nesting of same base type: " +
parentType + " is assignable from: " + childType);
More information about the jboss-svn-commits
mailing list