diff --git a/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/rule/logging/InvalidSlf4jMessageFormatRule.java b/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/rule/logging/InvalidSlf4jMessageFormatRule.java index 56020fffdd..238baae017 100644 --- a/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/rule/logging/InvalidSlf4jMessageFormatRule.java +++ b/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/rule/logging/InvalidSlf4jMessageFormatRule.java @@ -71,7 +71,15 @@ public class InvalidSlf4jMessageFormatRule extends AbstractJavaRule { final List argumentList = parentNode.getFirstChildOfType(ASTPrimarySuffix.class) .getFirstDescendantOfType(ASTArgumentList.class).findChildrenOfType(ASTExpression.class); for (final ASTExpression astExpression : argumentList) { - params.add(astExpression.getFirstChildOfType(ASTPrimaryExpression.class)); + ASTPrimaryExpression primaryExpression = astExpression.getFirstChildOfType(ASTPrimaryExpression.class); + if (primaryExpression != null) { + params.add(primaryExpression); + } + } + + if (params.isEmpty()) { + // no params we could analyze + return super.visit(node, data); } final ASTPrimaryExpression messageParam = params.get(0); diff --git a/pmd-java/src/test/resources/net/sourceforge/pmd/lang/java/rule/loggingjava/xml/InvalidSlf4jMessageFormat.xml b/pmd-java/src/test/resources/net/sourceforge/pmd/lang/java/rule/loggingjava/xml/InvalidSlf4jMessageFormat.xml index ea1df9778e..1c46b85765 100644 --- a/pmd-java/src/test/resources/net/sourceforge/pmd/lang/java/rule/loggingjava/xml/InvalidSlf4jMessageFormat.xml +++ b/pmd-java/src/test/resources/net/sourceforge/pmd/lang/java/rule/loggingjava/xml/InvalidSlf4jMessageFormat.xml @@ -105,6 +105,26 @@ public class NullPointerTypeProblem { System.out.println(st.nextToken()); } } +} + ]]> + + + + #1509 [java] InvalidSlf4jMessageFormat NPE + 0 + diff --git a/src/site/markdown/overview/changelog.md b/src/site/markdown/overview/changelog.md index ae2c6a9168..4771136998 100644 --- a/src/site/markdown/overview/changelog.md +++ b/src/site/markdown/overview/changelog.md @@ -12,4 +12,7 @@ **Bugfixes:** +* java + * [#1509](https://sourceforge.net/p/pmd/bugs/1509/) \[java] InvalidSlf4jMessageFormat NPE + **API Changes:**