fix: break forever loop for syncing backend data
authorSian Cao <yinshuiboy@gmail.com>
Fri, 8 Dec 2017 06:47:32 +0000 (14:47 +0800)
committerSian Cao <yinshuiboy@gmail.com>
Fri, 8 Dec 2017 07:04:19 +0000 (15:04 +0800)
option setValue emits valueChanged, and handler for valueChanged emits
setOption which requests backend to do doSetOption asynchronously which
in turn calls option's setValue again.

Change-Id: I5a6b5ccabfd29b26d3079779aad80461d7866d47

src/settings/backend/qsettingbackend.cpp

index fec9e4bca767730e69066bae5eea45da84e4fc7e..ae15b4fc329e81d3290d4721275ef3832c4dd2cc 100644 (file)
@@ -72,7 +72,6 @@ void QSettingBackend::doSetOption(const QString &key, const QVariant &value)
     auto oldValue = d->settings->value("value");
     if (oldValue != value) {
         d->settings->setValue("value", value);
-        Q_EMIT optionChanged(key, value);
     }
     d->settings->endGroup();
     d->settings->sync();