aboutsummaryrefslogtreecommitdiffstats
path: root/src/imports
diff options
context:
space:
mode:
Diffstat (limited to 'src/imports')
-rw-r--r--src/imports/settings/qqmlsettings.cpp5
1 files changed, 2 insertions, 3 deletions
diff --git a/src/imports/settings/qqmlsettings.cpp b/src/imports/settings/qqmlsettings.cpp
index ffd24983e7..011a39f20c 100644
--- a/src/imports/settings/qqmlsettings.cpp
+++ b/src/imports/settings/qqmlsettings.cpp
@@ -297,9 +297,8 @@ void QQmlSettingsPrivate::load()
const QVariant previousValue = property.read(q);
const QVariant currentValue = instance()->value(property.name(), previousValue);
- if (!currentValue.isNull()
- && currentValue.canConvert(previousValue.type())
- && previousValue != currentValue) {
+ if (!currentValue.isNull() && (!previousValue.isValid()
+ || (currentValue.canConvert(previousValue.type()) && previousValue != currentValue))) {
property.write(q, currentValue);
#ifdef SETTINGS_DEBUG
qDebug() << "QQmlSettings: load" << property.name() << "setting:" << currentValue << "default:" << previousValue;