Author: carnold
Date: Tue Aug 21 14:00:54 2007
New Revision: 568278
URL: http://svn.apache.org/viewvc?rev=568278&view=rev
Log:
Bug 43181: NPE in MDC after Tomcat reload
Modified:
logging/log4j/trunk/src/changes/changes.xml
logging/log4j/trunk/src/main/java/org/apache/log4j/MDC.java
Modified: logging/log4j/trunk/src/changes/changes.xml
URL:
http://svn.apache.org/viewvc/logging/log4j/trunk/src/changes/changes.xml?rev=568278&r1=568277&r2=568278&view=diff
==============================================================================
--- logging/log4j/trunk/src/changes/changes.xml (original)
+++ logging/log4j/trunk/src/changes/changes.xml Tue Aug 21 14:00:54 2007
@@ -22,7 +22,8 @@
<body>
<release version="1.2.15" date="2007-06-27" description="SyslogAppender
enhancements, NTEventLogAppender and Maven build.">
- <action action="fix" issue="34874">Notice to use UTF-8 or UTF-16
encoding added to XML and HTMLLayout javadoc.</action>
+ <action action="fix" issue="43181">NullPointerException in MDC on
Tomcat reload.</action>
+ <action action="fix" issue="34874">Notice to use UTF-8 or UTF-16
encoding added to XML and HTMLLayout javadoc.</action>
<action action="fix" issue="34875">XML and HTMLLayout do not always
escape special characters.</action>
<action action="add" issue="43078">Optionally render MDC content in
XMLLayout</action>
<action action="fix" issue="42694">Typo in log4j.dtd concerning
threshold.</action>
@@ -77,7 +78,7 @@
<release version="1.2.14" date="2006-09-18" description="AsyncAppender
rewrite, Syslog and SMTPAppender enhancements.">
<action action="fix" issue="38137">Monitor deadlock in
AsyncAppender.</action>
<action action="fix" issue="28006">AsyncAppender: Dispatcher should run
at normal prio.</action>
- <action action="fix" issue="40159">AsyncAppender wait forever when
buffer is full.</action>
+ <action action="fix" issue="37904">AsyncAppender wait forever when
buffer is full.</action>
<action action="add" issue="38982">Add non-blocking option for
AsyncAppender.</action>
<action action="add" issue="39687">Add SyslogPort option to
SyslogAppender.</action>
<action action="add" issue="19125">Add cc and bcc addresses to
SMTPAppender.</action>
Modified: logging/log4j/trunk/src/main/java/org/apache/log4j/MDC.java
URL:
http://svn.apache.org/viewvc/logging/log4j/trunk/src/main/java/org/apache/log4j/MDC.java?rev=568278&r1=568277&r2=568278&view=diff
==============================================================================
--- logging/log4j/trunk/src/main/java/org/apache/log4j/MDC.java (original)
+++ logging/log4j/trunk/src/main/java/org/apache/log4j/MDC.java Tue Aug 21
14:00:54 2007
@@ -70,7 +70,9 @@
static
public
void put(String key, Object o) {
- mdc.put0(key, o);
+ if (mdc != null) {
+ mdc.put0(key, o);
+ }
}
/**
@@ -81,7 +83,10 @@
static
public
Object get(String key) {
- return mdc.get0(key);
+ if (mdc != null) {
+ return mdc.get0(key);
+ }
+ return null;
}
/**
@@ -92,7 +97,9 @@
static
public
void remove(String key) {
- mdc.remove0(key);
+ if (mdc != null) {
+ mdc.remove0(key);
+ }
}
@@ -101,13 +108,17 @@
* intended to be used internally.
* */
public static Hashtable getContext() {
- return mdc.getContext0();
+ if (mdc != null) {
+ return mdc.getContext0();
+ } else {
+ return null;
+ }
}
private
void put0(String key, Object o) {
- if(java1) {
+ if(java1 || tlm == null) {
return;
} else {
Hashtable ht = (Hashtable) ((ThreadLocalMap)tlm).get();
@@ -121,7 +132,7 @@
private
Object get0(String key) {
- if(java1) {
+ if(java1 || tlm == null) {
return null;
} else {
Hashtable ht = (Hashtable) ((ThreadLocalMap)tlm).get();
@@ -135,7 +146,7 @@
private
void remove0(String key) {
- if(!java1) {
+ if(!java1 && tlm != null) {
Hashtable ht = (Hashtable) ((ThreadLocalMap)tlm).get();
if(ht != null) {
ht.remove(key);
@@ -146,7 +157,7 @@
private
Hashtable getContext0() {
- if(java1) {
+ if(java1 || tlm == null) {
return null;
} else {
return (Hashtable) ((ThreadLocalMap)tlm).get();
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]