diff --git a/com.googlecode.cppcheclipse.core/src/com/googlecode/cppcheclipse/core/command/CppcheckCommand.java b/com.googlecode.cppcheclipse.core/src/com/googlecode/cppcheclipse/core/command/CppcheckCommand.java index 3cc3dce..0ca866f 100644 --- a/com.googlecode.cppcheclipse.core/src/com/googlecode/cppcheclipse/core/command/CppcheckCommand.java +++ b/com.googlecode.cppcheclipse.core/src/com/googlecode/cppcheclipse/core/command/CppcheckCommand.java @@ -39,9 +39,8 @@ public class CppcheckCommand extends AbstractCppcheckCommand { private final static String ERROR_FORMAT = "{file}" + DELIMITER + "{line}" + DELIMITER + "{severity}" + DELIMITER + "{id}" + DELIMITER + "{message}"; - private final static String SAFETY_OFF = "--premium=safety-off"; private final static String[] DEFAULT_ARGUMENTS = { "--template=" - + ERROR_FORMAT, SAFETY_OFF }; + + ERROR_FORMAT }; /** * pattern recognizes "2/2 files checked 100% done" @@ -62,6 +61,9 @@ public class CppcheckCommand extends AbstractCppcheckCommand { private void addPremiumChecks(IPreferenceStore settingsStore) { + + arguments.add("--premium=safety-off"); + if (settingsStore.getBoolean(IPreferenceConstants.P_PREMIUM_BUG_HUNTING)) { arguments.add("--premium=bughunting"); } @@ -91,7 +93,7 @@ private void addPremiumChecks(IPreferenceStore settingsStore) { /** * For testing purposes either use interfaces or simple types as parameters. * No dependency to Eclipse classes allowed. - * + * * @param console * @param settingsStore * either workspace or project settings @@ -163,7 +165,9 @@ public CppcheckCommand(IConsole console, String binaryPath, } if (projectFile.isEmpty() || !projectFile.endsWith(CPPCHECK_PROJ_STRING)) { - addPremiumChecks(settingsStore); + if (settingsStore.getBoolean(IPreferenceConstants.P_PREMIUM)) { + addPremiumChecks(settingsStore); + } } if (settingsStore.getBoolean(IPreferenceConstants.P_CHECK_VERBOSE)) {