diff --git "a/C:\\Users\\kmaslyuk\\AppData\\Local\\Temp\\TortoiseGit\\btc8BAC.tmp\\btconfigcore-a98a0a8-left.h" "b/D:\\dev\\mini__\\src\\backend\\config\\btconfigcore.h" index 54617b5..7d243ee 100644 --- "a/C:\\Users\\kmaslyuk\\AppData\\Local\\Temp\\TortoiseGit\\btc8BAC.tmp\\btconfigcore-a98a0a8-left.h" +++ "b/D:\\dev\\mini__\\src\\backend\\config\\btconfigcore.h" @@ -16,6 +16,7 @@ #include #include +#include #include @@ -107,6 +108,7 @@ public: /* Methods: */ */ template inline T value(const QString & key, const T & defaultValue = T()) { + QMutexLocker l(&m_mutex); return m_settings.value(group() + key, QVariant::fromValue(defaultValue)).template value(); } @@ -120,6 +122,7 @@ public: /* Methods: */ */ template inline T sessionValue(const QString & key, const T & defaultValue = T()) { + QMutexLocker l(&m_mutex); return m_settings.value(m_cachedCurrentSessionGroup + group() + key, QVariant::fromValue(defaultValue)).template value(); } @@ -132,6 +135,7 @@ public: /* Methods: */ */ template inline void setValue(const QString & key, const T & value) { + QMutexLocker l(&m_mutex); m_settings.setValue(group() + key, QVariant::fromValue(value)); } @@ -143,6 +147,7 @@ public: /* Methods: */ */ template inline void setSessionValue(const QString & key, const T & value) { + QMutexLocker l(&m_mutex); m_settings.setValue(m_cachedCurrentSessionGroup + group() + key, QVariant::fromValue(value)); } @@ -270,6 +275,9 @@ private: /* Fields: */ static const QString GROUP_SESSION; static const QString KEY_SESSION_NAME; static const QString UI_FONT_SIZE; + + // Requider for asynchronous value() calls. + QMutex m_mutex; }; #endif // BTCONFIGCORE_H