diff --git a/libraries/shared/src/SettingHandle.cpp b/libraries/shared/src/SettingHandle.cpp index ae0f54104e..71427d1554 100644 --- a/libraries/shared/src/SettingHandle.cpp +++ b/libraries/shared/src/SettingHandle.cpp @@ -91,7 +91,7 @@ void Settings::setValue(const QString& name, const QVariant& value) { QVariant Settings::value(const QString& name, const QVariant& defaultValue) const { QVariant result = _manager->value(name, defaultValue); if (result == _manager->unsetValue()) { - return QVariant(QString()); + return defaultValue; } return result; } diff --git a/libraries/shared/src/SettingManager.h b/libraries/shared/src/SettingManager.h index 836c522342..e785c5f147 100644 --- a/libraries/shared/src/SettingManager.h +++ b/libraries/shared/src/SettingManager.h @@ -28,7 +28,7 @@ namespace Setting { public: void customDeleter() override; - QVariant unsetValue() { return UNSET_VALUE; } + const QVariant& unsetValue() { return UNSET_VALUE; } protected: ~Manager();