From 44581f7ed75944733eefcc28db20d34d8babb31f Mon Sep 17 00:00:00 2001 From: firewave Date: Thu, 28 Sep 2023 09:00:07 +0200 Subject: [PATCH 1/3] added `CmdLineLogger::printRaw()` --- cli/cmdlinelogger.h | 1 + cli/cmdlineparser.cpp | 32 ++++++++++++++++++-------------- cli/cppcheckexecutor.cpp | 7 ++++++- test/testcmdlineparser.cpp | 21 +++++++++++++-------- 4 files changed, 38 insertions(+), 23 deletions(-) diff --git a/cli/cmdlinelogger.h b/cli/cmdlinelogger.h index 97bb2821eb9..3a025a1f8c2 100644 --- a/cli/cmdlinelogger.h +++ b/cli/cmdlinelogger.h @@ -28,6 +28,7 @@ class CmdLineLogger virtual void printMessage(const std::string &message) = 0; virtual void printError(const std::string &message) = 0; + virtual void printRaw(const std::string &message) = 0; }; #endif // CMD_LINE_LOGGER_H diff --git a/cli/cmdlineparser.cpp b/cli/cmdlineparser.cpp index e36e2421c0b..eb330b82f84 100644 --- a/cli/cmdlineparser.cpp +++ b/cli/cmdlineparser.cpp @@ -313,7 +313,7 @@ bool CmdLineParser::parseFromArgs(int argc, const char* const argv[]) << info << "\n"; } - std::cout << doc.str(); + mLogger.printRaw(doc.str()); mExitAfterPrint = true; return true; } @@ -1057,7 +1057,8 @@ void CmdLineParser::printHelp() "https://cppcheck.sourceforge.io/manual.pdf" : "https://files.cppchecksolutions.com/manual.pdf"); - std::cout << "Cppcheck - A tool for static C/C++ code analysis\n" + std::ostringstream oss; + oss << "Cppcheck - A tool for static C/C++ code analysis\n" "\n" "Syntax:\n" " cppcheck [OPTIONS] [files or paths]\n" @@ -1249,20 +1250,21 @@ void CmdLineParser::printHelp() " Generate Clang-plist output files in folder.\n"; if (isCppcheckPremium()) { - std::cout << " --premium=