Repository: logging-log4j2 Updated Branches: refs/heads/release-2.x 2928984d7 -> 8c8657e9d
[LOG4J2-2481] Avoid NullPointerExceptions in org.apache.logging.log4j.core.config.AbstractConfiguration for null arguments to appenders. Project: http://git-wip-us.apache.org/repos/asf/logging-log4j2/repo Commit: http://git-wip-us.apache.org/repos/asf/logging-log4j2/commit/8c8657e9 Tree: http://git-wip-us.apache.org/repos/asf/logging-log4j2/tree/8c8657e9 Diff: http://git-wip-us.apache.org/repos/asf/logging-log4j2/diff/8c8657e9 Branch: refs/heads/release-2.x Commit: 8c8657e9d36a9302afbbe2ea3451e88411b0087c Parents: 2928984 Author: Gary Gregory <[email protected]> Authored: Fri Oct 19 12:17:55 2018 -0600 Committer: Gary Gregory <[email protected]> Committed: Fri Oct 19 12:17:55 2018 -0600 ---------------------------------------------------------------------- .../logging/log4j/core/config/AbstractConfiguration.java | 11 ++++++++--- src/changes/changes.xml | 3 +++ 2 files changed, 11 insertions(+), 3 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/8c8657e9/log4j-core/src/main/java/org/apache/logging/log4j/core/config/AbstractConfiguration.java ---------------------------------------------------------------------- diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/config/AbstractConfiguration.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/AbstractConfiguration.java index 1326285..5938539 100644 --- a/log4j-core/src/main/java/org/apache/logging/log4j/core/config/AbstractConfiguration.java +++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/AbstractConfiguration.java @@ -646,7 +646,7 @@ public abstract class AbstractConfiguration extends AbstractFilterable implement @Override @SuppressWarnings("unchecked") public <T extends Appender> T getAppender(final String appenderName) { - return (T) appenders.get(appenderName); + return appenderName != null ? (T) appenders.get(appenderName) : null; } /** @@ -666,7 +666,9 @@ public abstract class AbstractConfiguration extends AbstractFilterable implement */ @Override public void addAppender(final Appender appender) { - appenders.putIfAbsent(appender.getName(), appender); + if (appender != null) { + appenders.putIfAbsent(appender.getName(), appender); + } } @Override @@ -707,6 +709,9 @@ public abstract class AbstractConfiguration extends AbstractFilterable implement @Override public synchronized void addLoggerAppender(final org.apache.logging.log4j.core.Logger logger, final Appender appender) { + if (appender == null || logger == null) { + return; + } final String loggerName = logger.getName(); appenders.putIfAbsent(appender.getName(), appender); final LoggerConfig lc = getLoggerConfig(loggerName); @@ -782,7 +787,7 @@ public abstract class AbstractConfiguration extends AbstractFilterable implement for (final LoggerConfig logger : loggerConfigs.values()) { logger.removeAppender(appenderName); } - final Appender app = appenders.remove(appenderName); + final Appender app = appenderName != null ? appenders.remove(appenderName) : null; if (app != null) { app.stop(); http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/8c8657e9/src/changes/changes.xml ---------------------------------------------------------------------- diff --git a/src/changes/changes.xml b/src/changes/changes.xml index 61b6b11..f79138d 100644 --- a/src/changes/changes.xml +++ b/src/changes/changes.xml @@ -91,6 +91,9 @@ <action issue="LOG4J2-2134" dev="ggregory" type="fix" due-to="David del Amo Mateos, Gary Gregory"> StackOverflowError at AwaitCompletionReliabilityStrategy. </action> + <action issue="LOG4J2-2481" dev="ggregory" type="fix"> + Avoid NullPointerExceptions in org.apache.logging.log4j.core.config.AbstractConfiguration for null arguments. + </action> </release> <release version="2.11.1" date="2018-07-22" description="GA Release 2.11.1"> <action issue="LOG4J2-2389" dev="rgoers" type="fix" due-to="Liu Wen">
