summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRobert Griebl <robert.griebl@pelagicore.com>2018-03-14 20:53:48 +0100
committerRobert Griebl <robert.griebl@pelagicore.com>2018-03-15 22:56:02 +0000
commit9db1b8a2a72ad3005a3178fc50def520e387c850 (patch)
treedf3272a2012481b212881945314f697e1b561b08
parentd5baca389933ce965c17b7d46cd5d70bd097983a (diff)
Add support generic support for --no-dlt-logging
This simplifies custom appman executables a lot. Change-Id: Iceb5078e036924a6f79df1de77e86471a41aca66 Reviewed-by: Dominik Holland <dominik.holland@pelagicore.com>
-rw-r--r--examples/custom-appman/custom-appman.cpp2
-rw-r--r--src/common-lib/logging.cpp14
-rw-r--r--src/common-lib/logging.h1
-rw-r--r--src/tools/appman/appman.cpp9
4 files changed, 18 insertions, 8 deletions
diff --git a/examples/custom-appman/custom-appman.cpp b/examples/custom-appman/custom-appman.cpp
index ea23421b..38b96a25 100644
--- a/examples/custom-appman/custom-appman.cpp
+++ b/examples/custom-appman/custom-appman.cpp
@@ -65,7 +65,7 @@ Q_DECL_EXPORT int main(int argc, char *argv[])
QCoreApplication::setApplicationName(qSL("Custom ApplicationManager"));
QCoreApplication::setApplicationVersion("0.1");
- Logging::initialize();
+ Logging::initialize(argc, argv);
Package::ensureCorrectLocale();
diff --git a/src/common-lib/logging.cpp b/src/common-lib/logging.cpp
index acab9936..b74cb3b1 100644
--- a/src/common-lib/logging.cpp
+++ b/src/common-lib/logging.cpp
@@ -280,6 +280,20 @@ static void colorLogToStderr(QtMsgType msgType, const QMessageLogContext &contex
void Logging::initialize()
{
+ initialize(0, nullptr);
+}
+
+void Logging::initialize(int argc, const char * const *argv)
+{
+ if (argc > 0 && argv) {
+ for (int i = 1; i < argc; ++i) {
+ if (strcmp("--no-dlt-logging", argv[i]) == 0) {
+ Logging::setDltEnabled(false);
+ break;
+ }
+ }
+ }
+
auto messageHandler = [](QtMsgType msgType, const QMessageLogContext &context, const QString &message) {
#if defined(QT_GENIVIEXTRAS_LIB)
if (s_dltEnabled)
diff --git a/src/common-lib/logging.h b/src/common-lib/logging.h
index a969261c..77aff74f 100644
--- a/src/common-lib/logging.h
+++ b/src/common-lib/logging.h
@@ -59,6 +59,7 @@ class Logging
{
public:
static void initialize();
+ static void initialize(int argc, const char * const *argv);
static QStringList filterRules();
static void setFilterRules(const QStringList &rules);
diff --git a/src/tools/appman/appman.cpp b/src/tools/appman/appman.cpp
index 213d9dfd..6ad954ab 100644
--- a/src/tools/appman/appman.cpp
+++ b/src/tools/appman/appman.cpp
@@ -71,13 +71,8 @@ Q_DECL_EXPORT int main(int argc, char *argv[])
QCoreApplication::setOrganizationName(qSL("Pelagicore AG"));
QCoreApplication::setOrganizationDomain(qSL("pelagicore.com"));
QCoreApplication::setApplicationVersion(qSL(AM_VERSION));
- for (int i = 1; i < argc; ++i) {
- if (strcmp("--no-dlt-logging", argv[i]) == 0) {
- Logging::setDltEnabled(false);
- break;
- }
- }
- Logging::initialize();
+
+ Logging::initialize(argc, argv);
StartupTimer::instance()->checkpoint("after basic initialization");
#if !defined(AM_DISABLE_INSTALLER)