diff --git a/plugins/InspectionGadgets/src/com/siyeh/ig/logging/LogStatementGuardedByLogConditionInspection.java b/plugins/InspectionGadgets/src/com/siyeh/ig/logging/LogStatementGuardedByLogConditionInspection.java
index 5402e0281d9a..95a1b73e0a11 100644
--- a/plugins/InspectionGadgets/src/com/siyeh/ig/logging/LogStatementGuardedByLogConditionInspection.java
+++ b/plugins/InspectionGadgets/src/com/siyeh/ig/logging/LogStatementGuardedByLogConditionInspection.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2008-2012 Bas Leijdekkers
+ * Copyright 2008-2013 Bas Leijdekkers
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -221,9 +221,17 @@ public class LogStatementGuardedByLogConditionInspection extends BaseInspection
if (arguments.length == 0) {
return;
}
- final PsiExpression firstArgument = arguments[0];
- if (!flagAllUnguarded && PsiUtil.isConstantExpression(firstArgument)) {
- return;
+ if (!flagAllUnguarded) {
+ boolean constant = true;
+ for (PsiExpression argument : arguments) {
+ if (!PsiUtil.isConstantExpression(argument)) {
+ constant = false;
+ break;
+ }
+ }
+ if (constant) {
+ return;
+ }
}
registerMethodCallError(expression);
}
diff --git a/plugins/InspectionGadgets/test/com/siyeh/igtest/logging/log_statement_guarded_by_log_condition/LogStatementGuardedByLogCondition.java b/plugins/InspectionGadgets/test/com/siyeh/igtest/logging/log_statement_guarded_by_log_condition/LogStatementGuardedByLogCondition.java
index b8f4f8c43443..dfb8c65cc7e0 100644
--- a/plugins/InspectionGadgets/test/com/siyeh/igtest/logging/log_statement_guarded_by_log_condition/LogStatementGuardedByLogCondition.java
+++ b/plugins/InspectionGadgets/test/com/siyeh/igtest/logging/log_statement_guarded_by_log_condition/LogStatementGuardedByLogCondition.java
@@ -32,6 +32,10 @@ public class LogStatementGuardedByLogCondition {
}
}
+ void alternativeDebugMethodSignature(int i) {
+ LOG.debug(i, "asdfasdf");
+ }
+
static class Logger {
public Logger(String log) {
@@ -40,6 +44,8 @@ public class LogStatementGuardedByLogCondition {
public void debug(String s) {
}
+ public void debug(int i, String s) {}
+
public void trace(String s) {}
public boolean isDebug() {
diff --git a/plugins/InspectionGadgets/test/com/siyeh/igtest/logging/log_statement_guarded_by_log_condition/expected.xml b/plugins/InspectionGadgets/test/com/siyeh/igtest/logging/log_statement_guarded_by_log_condition/expected.xml
index e04e666cf360..701ef7837e72 100644
--- a/plugins/InspectionGadgets/test/com/siyeh/igtest/logging/log_statement_guarded_by_log_condition/expected.xml
+++ b/plugins/InspectionGadgets/test/com/siyeh/igtest/logging/log_statement_guarded_by_log_condition/expected.xml
@@ -14,4 +14,11 @@
Log statement not guarded by log condition
<code>debug()</code> log statement not guarded by log condition #loc
+
+
+ LogStatementGuardedByLogCondition.java
+ 36
+ Log statement not guarded by log condition
+ <code>debug()</code> log statement not guarded by log condition #loc
+
\ No newline at end of file