From f557dd77927b9892cc9d8c0c5679eb5d4c354b21 Mon Sep 17 00:00:00 2001 From: Kevin Ottens Date: Wed, 1 Jul 2020 16:08:13 +0200 Subject: [PATCH] Allow to control logDir from the config file Signed-off-by: Kevin Ottens --- src/gui/application.cpp | 2 +- src/libsync/configfile.cpp | 13 +++++++++++++ src/libsync/configfile.h | 3 +++ 3 files changed, 17 insertions(+), 1 deletion(-) diff --git a/src/gui/application.cpp b/src/gui/application.cpp index 79e925e91..ea2c1bf60 100644 --- a/src/gui/application.cpp +++ b/src/gui/application.cpp @@ -408,7 +408,7 @@ void Application::setupLogging() // might be called from second instance auto logger = Logger::instance(); logger->setLogFile(_logFile); - logger->setLogDir(_logDir); + logger->setLogDir(!_logDir.isEmpty() ? _logDir : ConfigFile().logDir()); logger->setLogExpire(_logExpire > 0 ? _logExpire : ConfigFile().logExpire()); logger->setLogFlush(_logFlush); logger->setLogDebug(_logDebug || ConfigFile().logDebug()); diff --git a/src/libsync/configfile.cpp b/src/libsync/configfile.cpp index 0c172e2e7..9a450b4b5 100644 --- a/src/libsync/configfile.cpp +++ b/src/libsync/configfile.cpp @@ -73,6 +73,7 @@ static const char minChunkSizeC[] = "minChunkSize"; static const char maxChunkSizeC[] = "maxChunkSize"; static const char targetChunkUploadDurationC[] = "targetChunkUploadDuration"; static const char automaticLogDirC[] = "logToTemporaryLogDir"; +static const char logDirC[] = "logDir"; static const char logDebugC[] = "logDebug"; static const char logExpireC[] = "logExpire"; @@ -855,6 +856,18 @@ void ConfigFile::setAutomaticLogDir(bool enabled) settings.setValue(QLatin1String(automaticLogDirC), enabled); } +QString ConfigFile::logDir() const +{ + QSettings settings(configFile(), QSettings::IniFormat); + return settings.value(QLatin1String(logDirC), QString()).toString(); +} + +void ConfigFile::setLogDir(const QString &dir) +{ + QSettings settings(configFile(), QSettings::IniFormat); + settings.setValue(QLatin1String(logDirC), dir); +} + bool ConfigFile::logDebug() const { QSettings settings(configFile(), QSettings::IniFormat); diff --git a/src/libsync/configfile.h b/src/libsync/configfile.h index 0d0b5cd3f..2919964ab 100644 --- a/src/libsync/configfile.h +++ b/src/libsync/configfile.h @@ -92,6 +92,9 @@ public: bool automaticLogDir() const; void setAutomaticLogDir(bool enabled); + QString logDir() const; + void setLogDir(const QString &dir); + bool logDebug() const; void setLogDebug(bool enabled); -- 2.39.5