Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/keepassxreboot/keepassxc.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/src/core
diff options
context:
space:
mode:
authorLouis-Bertrand Varin <louisbvarin@gmail.com>2017-03-07 01:12:07 +0300
committerLouis-Bertrand Varin <louisv@unito.io>2017-03-18 20:19:57 +0300
commit15a288aa5bb5477ab01304a8660daff9862b4df5 (patch)
tree61112b17c191be3440091b215dcdfe532adaa4eb /src/core
parentc4d6fa855c399a347b5be6159eb3599deea00507 (diff)
Adding warning messages when config access error.
Diffstat (limited to 'src/core')
-rw-r--r--src/core/Config.cpp14
-rw-r--r--src/core/Config.h2
2 files changed, 16 insertions, 0 deletions
diff --git a/src/core/Config.cpp b/src/core/Config.cpp
index 28b17536f..e3a1cb633 100644
--- a/src/core/Config.cpp
+++ b/src/core/Config.cpp
@@ -35,6 +35,16 @@ QVariant Config::get(const QString& key, const QVariant& defaultValue)
return m_settings->value(key, defaultValue);
}
+bool Config::hasAccessError()
+{
+ return m_settings->status() & QSettings::AccessError;
+}
+
+QString Config::getFileName()
+{
+ return m_settings->fileName();
+}
+
void Config::set(const QString& key, const QVariant& value)
{
m_settings->setValue(key, value);
@@ -92,6 +102,10 @@ void Config::init(const QString& fileName)
{
m_settings.reset(new QSettings(fileName, QSettings::IniFormat));
+ if (hasAccessError()) {
+ qWarning("Access error with config file %s", qPrintable(fileName));
+ }
+
m_defaults.insert("RememberLastDatabases", true);
m_defaults.insert("RememberLastKeyFiles", true);
m_defaults.insert("OpenPreviousDatabasesOnStartup", true);
diff --git a/src/core/Config.h b/src/core/Config.h
index 09aa02fb1..1fb937cf9 100644
--- a/src/core/Config.h
+++ b/src/core/Config.h
@@ -31,7 +31,9 @@ public:
~Config();
QVariant get(const QString& key);
QVariant get(const QString& key, const QVariant& defaultValue);
+ QString getFileName();
void set(const QString& key, const QVariant& value);
+ bool hasAccessError();
static Config* instance();
static void createConfigFromFile(const QString& file);