Author: mattsicker
Date: Mon May 26 23:59:55 2014
New Revision: 1597669

URL: http://svn.apache.org/r1597669
Log:
Prevent NPE where config may be null but header/footer are not.

Modified:
    
logging/log4j/log4j2/trunk/log4j-core/src/main/java/org/apache/logging/log4j/core/layout/PatternLayout.java

Modified: 
logging/log4j/log4j2/trunk/log4j-core/src/main/java/org/apache/logging/log4j/core/layout/PatternLayout.java
URL: 
http://svn.apache.org/viewvc/logging/log4j/log4j2/trunk/log4j-core/src/main/java/org/apache/logging/log4j/core/layout/PatternLayout.java?rev=1597669&r1=1597668&r2=1597669&view=diff
==============================================================================
--- 
logging/log4j/log4j2/trunk/log4j-core/src/main/java/org/apache/logging/log4j/core/layout/PatternLayout.java
 (original)
+++ 
logging/log4j/log4j2/trunk/log4j-core/src/main/java/org/apache/logging/log4j/core/layout/PatternLayout.java
 Mon May 26 23:59:55 2014
@@ -139,24 +139,22 @@ public final class PatternLayout extends
         }
     }
 
-    @Override
-    public byte[] getHeader() {
-        byte [] myHeader = super.getHeader();
-        if (myHeader != null) {
+    private byte[] strSubstitutorReplace(final byte... b) {
+        if (b != null && config != null) {
             final Charset cs = getCharset();
-            return config.getStrSubstitutor().replace(new String(myHeader, 
cs)).getBytes(cs);
+            return config.getStrSubstitutor().replace(new String(b, 
cs)).getBytes(cs);
         }
-        return myHeader;
+        return b;
+    }
+
+    @Override
+    public byte[] getHeader() {
+        return strSubstitutorReplace(super.getHeader());
     }
 
     @Override
     public byte[] getFooter() {
-        byte [] myFooter = super.getFooter();
-        if (myFooter != null) {
-            final Charset cs = getCharset();
-            return config.getStrSubstitutor().replace(new String(myFooter, 
cs)).getBytes(cs);
-        }
-        return myFooter;
+        return strSubstitutorReplace(super.getFooter());
     }
 
     /**


Reply via email to