From 7422552a6532c757c737d7671305678b60c264d6 Mon Sep 17 00:00:00 2001 From: Don Gagne Date: Thu, 1 Oct 2015 12:25:34 -0700 Subject: [PATCH] Add new --logging command line option support MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Remove old —full-logging --- src/QGCApplication.cc | 31 ++++++++++++++++++++++++------- 1 file changed, 24 insertions(+), 7 deletions(-) diff --git a/src/QGCApplication.cc b/src/QGCApplication.cc index d96ba0bcd..e93f3bd77 100644 --- a/src/QGCApplication.cc +++ b/src/QGCApplication.cc @@ -180,14 +180,15 @@ QGCApplication::QGCApplication(int &argc, char* argv[], bool unitTesting) // Parse command line options bool fClearSettingsOptions = false; // Clear stored settings - bool fullLogging = false; // Turn on all logging + bool logging = false; // Turn on logging + QString loggingOptions; CmdLineOpt_t rgCmdLineOptions[] = { - { "--clear-settings", &fClearSettingsOptions, QString() }, - { "--full-logging", &fullLogging, QString() }, - { "--fake-mobile", &_fakeMobile, QString() }, + { "--clear-settings", &fClearSettingsOptions, NULL }, + { "--logging", &logging, &loggingOptions }, + { "--fake-mobile", &_fakeMobile, NULL }, #ifdef QT_DEBUG - { "--test-high-dpi", &_testHighDPI, QString() }, + { "--test-high-dpi", &_testHighDPI, NULL }, #endif // Add additional command line option flags here }; @@ -197,8 +198,24 @@ QGCApplication::QGCApplication(int &argc, char* argv[], bool unitTesting) #ifdef __mobile__ QLoggingCategory::setFilterRules(QStringLiteral("*Log.debug=false")); #else - if (fullLogging) { - QLoggingCategory::setFilterRules(QStringLiteral("*Log=true")); + if (logging) { + QString filterRules; + QStringList logList = loggingOptions.split(","); + + if (logList[0] == "full") { + filterRules += "*Log.debug=true\n"; + for(int i=1; i