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

github.com/nextcloud/desktop.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthieu Gallien <matthieu.gallien@nextcloud.com>2022-10-24 18:53:40 +0300
committerMatthieu Gallien <matthieu.gallien@nextcloud.com>2022-10-24 19:10:03 +0300
commite9959716ec2e6674ab7570b92d3d393f1920d5d5 (patch)
tree6476c2797a7030f51c678b7b73e87735ba951d84
parentf1c3ceeee5726f2905a58bd0e4aade6b4ba25281 (diff)
fix instances of: c++11 range-loop might detach Qt container warningsci/clazyRangeLoopDetach
analyzed via clazy Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
-rw-r--r--src/3rdparty/kirigami/wheelhandler.cpp3
-rw-r--r--src/gui/accountmanager.cpp15
-rw-r--r--src/gui/application.cpp6
-rw-r--r--src/gui/folderman.cpp37
-rw-r--r--src/gui/networksettings.cpp3
-rw-r--r--src/gui/sharedialog.cpp2
-rw-r--r--src/gui/socketapi/socketapi.cpp3
-rw-r--r--src/gui/tray/notificationhandler.cpp3
-rw-r--r--src/gui/tray/unifiedsearchresultslistmodel.cpp4
-rw-r--r--src/gui/tray/usermodel.cpp7
-rw-r--r--src/libsync/creds/httpcredentials.cpp2
-rw-r--r--src/libsync/discovery.cpp2
-rw-r--r--src/libsync/syncengine.cpp4
-rw-r--r--test/syncenginetestutils.cpp3
-rw-r--r--test/testallfilesdeleted.cpp12
-rw-r--r--test/testchunkingng.cpp3
-rw-r--r--test/testfolderwatcher.cpp4
-rw-r--r--test/testsyncconflict.cpp5
-rw-r--r--test/testsyncjournaldb.cpp5
-rw-r--r--test/testsyncmove.cpp4
20 files changed, 80 insertions, 47 deletions
diff --git a/src/3rdparty/kirigami/wheelhandler.cpp b/src/3rdparty/kirigami/wheelhandler.cpp
index fdfcee044..ff3fba497 100644
--- a/src/3rdparty/kirigami/wheelhandler.cpp
+++ b/src/3rdparty/kirigami/wheelhandler.cpp
@@ -71,7 +71,8 @@ bool GlobalWheelFilter::eventFilter(QObject *watched, QEvent *event)
bool shouldBlock = false;
bool shouldScrollFlickable = false;
- for (auto *handler : m_handlersForItem.values(item)) {
+ const auto handlerItems = m_handlersForItem.values(item);
+ for (auto *handler : handlerItems) {
if (handler->m_blockTargetWheel) {
shouldBlock = true;
}
diff --git a/src/gui/accountmanager.cpp b/src/gui/accountmanager.cpp
index 4966ac72f..2c4fd5478 100644
--- a/src/gui/accountmanager.cpp
+++ b/src/gui/accountmanager.cpp
@@ -81,7 +81,8 @@ bool AccountManager::restore()
return true;
}
- for (const auto &accountId : settings->childGroups()) {
+ const auto settingsChildGroups = settings->childGroups();
+ for (const auto &accountId : settingsChildGroups) {
settings->beginGroup(accountId);
if (!skipSettingsKeys.contains(settings->group())) {
if (auto acc = loadAccountHelper(*settings)) {
@@ -234,7 +235,8 @@ void AccountManager::saveAccountHelper(Account *acc, QSettings &settings, bool s
// re-persisting them)
acc->_credentials->persist();
}
- for (const auto &key : acc->_settingsMap.keys()) {
+ const auto settingsKeys = acc->_settingsMap.keys();
+ for (const auto &key : settingsKeys) {
settings.setValue(key, acc->_settingsMap.value(key));
}
settings.setValue(QLatin1String(authTypeC), acc->_credentials->authType());
@@ -248,7 +250,8 @@ void AccountManager::saveAccountHelper(Account *acc, QSettings &settings, bool s
settings.beginGroup(QLatin1String("General"));
qCInfo(lcAccountManager) << "Saving " << acc->approvedCerts().count() << " unknown certs.";
QByteArray certs;
- for (const auto &cert : acc->approvedCerts()) {
+ const auto approvedCerts = acc->approvedCerts();
+ for (const auto &cert : approvedCerts) {
certs += cert.toPem() + '\n';
}
if (!certs.isEmpty()) {
@@ -308,7 +311,8 @@ AccountPtr AccountManager::loadAccountHelper(QSettings &settings)
authType = "webflow";
settings.setValue(QLatin1String(authTypeC), authType);
- for (const QString &key : settings.childKeys()) {
+ const auto settingsChildKeys = settings.childKeys();
+ for (const QString &key : settingsChildKeys) {
if (!key.startsWith("http_"))
continue;
auto newkey = QString::fromLatin1("webflow_").append(key.mid(5));
@@ -326,7 +330,8 @@ AccountPtr AccountManager::loadAccountHelper(QSettings &settings)
acc->_settingsMap.insert(QLatin1String(userC), settings.value(userC));
acc->_displayName = settings.value(QLatin1String(displayNameC), "").toString();
QString authTypePrefix = authType + "_";
- for (const auto &key : settings.childKeys()) {
+ const auto settingsChildKeys = settings.childKeys();
+ for (const auto &key : settingsChildKeys) {
if (!key.startsWith(authTypePrefix))
continue;
acc->_settingsMap.insert(key, settings.value(key));
diff --git a/src/gui/application.cpp b/src/gui/application.cpp
index a04ee2f13..e9a9ea3b1 100644
--- a/src/gui/application.cpp
+++ b/src/gui/application.cpp
@@ -174,8 +174,9 @@ bool Application::configVersionMigration()
settings->endGroup();
// Wipe confusing keys from the future, ignore the others
- for (const auto &badKey : deleteKeys)
+ for (const auto &badKey : qAsConst(deleteKeys)) {
settings->remove(badKey);
+ }
}
configFile.setClientVersionString(MIRALL_VERSION_STRING);
@@ -370,7 +371,8 @@ Application::Application(int &argc, char **argv)
this, &Application::slotAccountStateAdded);
connect(AccountManager::instance(), &AccountManager::accountRemoved,
this, &Application::slotAccountStateRemoved);
- for (const auto &ai : AccountManager::instance()->accounts()) {
+ const auto accounts = AccountManager::instance()->accounts();
+ for (const auto &ai : accounts) {
slotAccountStateAdded(ai.data());
}
diff --git a/src/gui/folderman.cpp b/src/gui/folderman.cpp
index cd4bac264..6a0cfe70e 100644
--- a/src/gui/folderman.cpp
+++ b/src/gui/folderman.cpp
@@ -184,7 +184,8 @@ int FolderMan::setupFolders()
qCInfo(lcFolderMan) << "Setup folders from settings file";
- for (const auto &account : AccountManager::instance()->accounts()) {
+ const auto accounts = AccountManager::instance()->accounts();
+ for (const auto &account : accounts) {
const auto id = account->account()->id();
if (!accountsWithSettings.contains(id)) {
continue;
@@ -215,7 +216,7 @@ int FolderMan::setupFolders()
emit folderListChanged(_folderMap);
- for (const auto folder : _folderMap) {
+ for (const auto folder : qAsConst(_folderMap)) {
folder->processSwitchedToVirtualFiles();
}
@@ -224,7 +225,8 @@ int FolderMan::setupFolders()
void FolderMan::setupFoldersHelper(QSettings &settings, AccountStatePtr account, const QStringList &ignoreKeys, bool backwardsCompatible, bool foldersWithPlaceholders)
{
- for (const auto &folderAlias : settings.childGroups()) {
+ const auto settingsChildGroups = settings.childGroups();
+ for (const auto &folderAlias : settingsChildGroups) {
// Skip folders with too-new version
settings.beginGroup(folderAlias);
if (ignoreKeys.contains(settings.group())) {
@@ -388,7 +390,8 @@ void FolderMan::backwardMigrationSettingsKeys(QStringList *deleteKeys, QStringLi
settings->endGroup();
};
- for (const auto &accountId : settings->childGroups()) {
+ const auto settingsChildGroups = settings->childGroups();
+ for (const auto &accountId : settingsChildGroups) {
settings->beginGroup(accountId);
processSubgroup("Folders");
processSubgroup("Multifolders");
@@ -594,7 +597,8 @@ Folder *FolderMan::folder(const QString &alias)
void FolderMan::scheduleAllFolders()
{
- for (Folder *f : _folderMap.values()) {
+ const auto folderMapValues = _folderMap.values();
+ for (Folder *f : folderMapValues) {
if (f && f->canSync()) {
scheduleFolder(f);
}
@@ -720,7 +724,8 @@ void FolderMan::slotAccountStateChanged()
if (accountState->isConnected()) {
qCInfo(lcFolderMan) << "Account" << accountName << "connected, scheduling its folders";
- for (Folder *f : _folderMap.values()) {
+ const auto folderMapValues = _folderMap.values();
+ for (Folder *f : folderMapValues) {
if (f
&& f->canSync()
&& f->accountState() == accountState) {
@@ -760,7 +765,7 @@ void FolderMan::setSyncEnabled(bool enabled)
}
_syncEnabled = enabled;
// force a redraw in case the network connect status changed
- emit(folderSyncStateChange(nullptr));
+ emit folderSyncStateChange(nullptr);
}
void FolderMan::startScheduledSyncSoon()
@@ -816,7 +821,7 @@ void FolderMan::startScheduledSyncSoon()
void FolderMan::slotStartScheduledFolderSync()
{
if (isAnySyncRunning()) {
- for (auto f : _folderMap) {
+ for (auto f : qAsConst(_folderMap)) {
if (f->isSyncRunning())
qCInfo(lcFolderMan) << "Currently folder " << f->remoteUrl().toString() << " is running, wait for finish!";
}
@@ -1202,7 +1207,8 @@ QStringList FolderMan::findFileInLocalFolders(const QString &relPath, const Acco
if (!serverPath.startsWith('/'))
serverPath.prepend('/');
- for (Folder *folder : this->map().values()) {
+ const auto mapValues = map().values();
+ for (Folder *folder : mapValues) {
if (acc && folder->accountState()->account() != acc) {
continue;
}
@@ -1400,7 +1406,8 @@ void FolderMan::slotWipeFolderForAccount(AccountState *accountState)
void FolderMan::setDirtyProxy()
{
- for (const Folder *f : _folderMap.values()) {
+ const auto folderMapValues = _folderMap.values();
+ for (const Folder *f : folderMapValues) {
if (f) {
if (f->accountState() && f->accountState()->account()
&& f->accountState()->account()->networkAccessManager()) {
@@ -1414,7 +1421,8 @@ void FolderMan::setDirtyProxy()
void FolderMan::setDirtyNetworkLimits()
{
- for (Folder *f : _folderMap.values()) {
+ const auto folderMapValues = _folderMap.values();
+ for (Folder *f : folderMapValues) {
// set only in busy folders. Otherwise they read the config anyway.
if (f && f->isBusy()) {
f->setDirtyNetworkLimits();
@@ -1431,7 +1439,7 @@ void FolderMan::editFileLocally(const QString &userId, const QString &relPath, c
});
if (foundFolder != std::cend(map())) {
- (*foundFolder)->syncEngine().addErrorToGui(SyncFileItem::SoftError, errorMessage, subject);
+ emit (*foundFolder)->syncEngine().addErrorToGui(SyncFileItem::SoftError, errorMessage, subject);
}
}
@@ -1454,7 +1462,8 @@ void FolderMan::editFileLocally(const QString &userId, const QString &relPath, c
}
const auto accountFound = [&userId]() {
- for (const auto &account : AccountManager::instance()->accounts()) {
+ const auto accounts = AccountManager::instance()->accounts();
+ for (const auto &account : accounts) {
const auto isUserIdWithPort = userId.split(QLatin1Char(':')).size() > 1;
const auto port = isUserIdWithPort ? account->account()->url().port() : -1;
const auto portString = (port > 0 && port != 80 && port != 443) ? QStringLiteral(":%1").arg(port) : QStringLiteral("");
@@ -1881,7 +1890,7 @@ void FolderMan::slotProcessFilesPushNotification(Account *account)
{
qCInfo(lcFolderMan) << "Got files push notification for account" << account;
- for (auto folder : _folderMap) {
+ for (auto folder : qAsConst(_folderMap)) {
// Just run on the folders that belong to this account
if (folder->accountState()->account() != account) {
continue;
diff --git a/src/gui/networksettings.cpp b/src/gui/networksettings.cpp
index 7e00b97ac..0be6fa836 100644
--- a/src/gui/networksettings.cpp
+++ b/src/gui/networksettings.cpp
@@ -252,7 +252,8 @@ void NetworkSettings::checkAccountLocalhost()
if (_ui->manualProxyRadioButton->isChecked()) {
// Check if at least one account is using localhost, because Qt proxy settings have no
// effect for localhost (#7169)
- for (const auto &account : AccountManager::instance()->accounts()) {
+ const auto accounts = AccountManager::instance()->accounts();
+ for (const auto &account : accounts) {
const auto host = account->account()->url().host();
// Some typical url for localhost
if (host == "localhost" || host.startsWith("127.") || host == "[::1]")
diff --git a/src/gui/sharedialog.cpp b/src/gui/sharedialog.cpp
index 99a0b8356..c967741f5 100644
--- a/src/gui/sharedialog.cpp
+++ b/src/gui/sharedialog.cpp
@@ -265,7 +265,7 @@ void ShareDialog::adjustScrollWidget()
auto linkWidgetHeights = 0;
if(scrollAreaContentHeight == 0 && !_linkWidgetList.empty()) {
- for (const auto linkWidget : _linkWidgetList) {
+ for (const auto linkWidget : qAsConst(_linkWidgetList)) {
linkWidgetHeights += linkWidget->height() - 10;
}
}
diff --git a/src/gui/socketapi/socketapi.cpp b/src/gui/socketapi/socketapi.cpp
index 4de3317a2..ba0020af8 100644
--- a/src/gui/socketapi/socketapi.cpp
+++ b/src/gui/socketapi/socketapi.cpp
@@ -990,7 +990,8 @@ void SocketApi::setFileLock(const QString &localFile, const SyncFileItem::LockSt
void SocketApi::command_V2_LIST_ACCOUNTS(const QSharedPointer<SocketApiJobV2> &job) const
{
QJsonArray out;
- for (auto acc : AccountManager::instance()->accounts()) {
+ const auto accounts = AccountManager::instance()->accounts();
+ for (auto acc : accounts) {
// TODO: Use uuid once https://github.com/owncloud/client/pull/8397 is merged
out << QJsonObject({ { "name", acc->account()->displayName() }, { "id", acc->account()->id() } });
}
diff --git a/src/gui/tray/notificationhandler.cpp b/src/gui/tray/notificationhandler.cpp
index 4137cb361..d0fc7b4c8 100644
--- a/src/gui/tray/notificationhandler.cpp
+++ b/src/gui/tray/notificationhandler.cpp
@@ -92,7 +92,8 @@ void ServerNotificationHandler::slotNotificationsReceived(const QJsonDocument &j
if(json.contains("subjectRichParameters")) {
const auto richParams = json.value("subjectRichParameters").toObject();
- for(const auto &key : richParams.keys()) {
+ const auto richParamsKeys = richParams.keys();
+ for(const auto &key : richParamsKeys) {
const auto parameterJsonObject = richParams.value(key).toObject();
a._subjectRichParameters.insert(key, Activity::RichSubjectParameter{
parameterJsonObject.value(QStringLiteral("type")).toString(),
diff --git a/src/gui/tray/unifiedsearchresultslistmodel.cpp b/src/gui/tray/unifiedsearchresultslistmodel.cpp
index 805af8ea4..d2345da99 100644
--- a/src/gui/tray/unifiedsearchresultslistmodel.cpp
+++ b/src/gui/tray/unifiedsearchresultslistmodel.cpp
@@ -504,7 +504,7 @@ void UnifiedSearchResultsListModel::startSearch()
endResetModel();
}
- for (const auto &provider : _providers) {
+ for (const auto &provider : qAsConst(_providers)) {
startSearchForProvider(provider._id);
}
}
@@ -724,7 +724,7 @@ void UnifiedSearchResultsListModel::removeFetchMoreTrigger(const QString &provid
void UnifiedSearchResultsListModel::disconnectAndClearSearchJobs()
{
- for (const auto &connection : _searchJobConnections) {
+ for (const auto &connection : qAsConst(_searchJobConnections)) {
if (connection) {
QObject::disconnect(connection);
}
diff --git a/src/gui/tray/usermodel.cpp b/src/gui/tray/usermodel.cpp
index 79c75d4eb..fe5617dd2 100644
--- a/src/gui/tray/usermodel.cpp
+++ b/src/gui/tray/usermodel.cpp
@@ -136,7 +136,7 @@ void User::slotBuildNotificationDisplay(const ActivityList &list)
showDesktopNotification(subject, message, -static_cast<int>(qHash(subject)));
// Set these activities as notified here, rather than in showDesktopNotification
- for(const auto &activity : toNotifyList) {
+ for(const auto &activity : qAsConst(toNotifyList)) {
_notifiedNotifications.insert(activity._id);
_activityModel->addNotificationToActivityList(activity);
}
@@ -144,7 +144,7 @@ void User::slotBuildNotificationDisplay(const ActivityList &list)
return;
}
- for(const auto &activity : toNotifyList) {
+ for(const auto &activity : qAsConst(toNotifyList)) {
const auto message = activity._objectType == QStringLiteral("chat")
? activity._message : AccountManager::instance()->accounts().count() == 1 ? "" : activity._accName;
@@ -220,7 +220,8 @@ void User::slotReceivedPushActivity(Account *account)
void User::slotCheckExpiredActivities()
{
- for (const Activity &activity : _activityModel->errorsList()) {
+ const auto errorsList = _activityModel->errorsList();
+ for (const Activity &activity : errorsList) {
if (activity._expireAtMsecs > 0 && QDateTime::currentDateTime().toMSecsSinceEpoch() >= activity._expireAtMsecs) {
_activityModel->removeActivityFromActivityList(activity);
}
diff --git a/src/libsync/creds/httpcredentials.cpp b/src/libsync/creds/httpcredentials.cpp
index 292680ee1..b0038efbd 100644
--- a/src/libsync/creds/httpcredentials.cpp
+++ b/src/libsync/creds/httpcredentials.cpp
@@ -448,7 +448,7 @@ bool HttpCredentials::refreshAccessToken()
persist();
}
_isRenewingOAuthToken = false;
- for (const auto &job : _retryQueue) {
+ for (const auto &job : qAsConst(_retryQueue)) {
if (job)
job->retry();
}
diff --git a/src/libsync/discovery.cpp b/src/libsync/discovery.cpp
index 57426dd8a..3445b94c9 100644
--- a/src/libsync/discovery.cpp
+++ b/src/libsync/discovery.cpp
@@ -1653,7 +1653,7 @@ bool ProcessDirectoryJob::checkPermissions(const OCC::SyncFileItemPtr &item)
bool ProcessDirectoryJob::isAnyParentBeingRestored(const QString &file) const
{
- for (const auto &directoryNameToRestore : _discoveryData->_directoryNamesToRestoreOnPropagation) {
+ for (const auto &directoryNameToRestore : qAsConst(_discoveryData->_directoryNamesToRestoreOnPropagation)) {
if (file.startsWith(QString(directoryNameToRestore + QLatin1Char('/')))) {
qCWarning(lcDisco) << "File" << file << " is within the tree that's being restored" << directoryNameToRestore;
return true;
diff --git a/src/libsync/syncengine.cpp b/src/libsync/syncengine.cpp
index c39d63989..f75d3f5e7 100644
--- a/src/libsync/syncengine.cpp
+++ b/src/libsync/syncengine.cpp
@@ -1183,7 +1183,7 @@ void SyncEngine::slotScheduleFilesDelayedSync()
newTimer->callOnTimeout(this, [this, newTimer] {
qCInfo(lcEngine) << "Rescanning now that delayed sync run is scheduled for:" << newTimer->files;
- for (const auto &file : newTimer->files) {
+ for (const auto &file : qAsConst(newTimer->files)) {
this->_filesScheduledForLaterSync.remove(file);
}
@@ -1309,7 +1309,7 @@ void SyncEngine::slotUnscheduleFilesDelayedSync()
return;
}
- for (const auto &file : _discoveryPhase->_filesUnscheduleSync) {
+ for (const auto &file : qAsConst(_discoveryPhase->_filesUnscheduleSync)) {
const auto fileSyncRunTimer = _filesScheduledForLaterSync.value(file);
if (fileSyncRunTimer) {
diff --git a/test/syncenginetestutils.cpp b/test/syncenginetestutils.cpp
index f7e1faf5a..aa579ae09 100644
--- a/test/syncenginetestutils.cpp
+++ b/test/syncenginetestutils.cpp
@@ -783,7 +783,8 @@ FileInfo *FakeChunkMoveReply::perform(FileInfo &uploadsFileInfo, FileInfo &remot
Q_ASSERT(!fileName.isEmpty());
// Compute the size and content from the chunks if possible
- for (auto chunkName : sourceFolder->children.keys()) {
+ const auto childrenKeys = sourceFolder->children.keys();
+ for (auto chunkName : childrenKeys) {
auto &x = sourceFolder->children[chunkName];
Q_ASSERT(!x.isDir);
Q_ASSERT(x.size > 0); // There should not be empty chunks
diff --git a/test/testallfilesdeleted.cpp b/test/testallfilesdeleted.cpp
index c881b6914..90b8a1eba 100644
--- a/test/testallfilesdeleted.cpp
+++ b/test/testallfilesdeleted.cpp
@@ -70,8 +70,10 @@ private slots:
});
auto &modifier = deleteOnRemote ? fakeFolder.remoteModifier() : fakeFolder.localModifier();
- for (const auto &s : fakeFolder.currentRemoteState().children.keys())
+ const auto childrenKeys = fakeFolder.currentRemoteState().children.keys();
+ for (const auto &s : childrenKeys) {
modifier.remove(s);
+ }
QVERIFY(!fakeFolder.syncOnce()); // Should fail because we cancel the sync
QCOMPARE(aboutToRemoveAllFilesCalled, 1);
@@ -110,8 +112,10 @@ private slots:
});
auto &modifier = deleteOnRemote ? fakeFolder.remoteModifier() : fakeFolder.localModifier();
- for (const auto &s : fakeFolder.currentRemoteState().children.keys())
+ const auto childrenKeys = fakeFolder.currentRemoteState().children.keys();
+ for (const auto &s : childrenKeys) {
modifier.remove(s);
+ }
QVERIFY(fakeFolder.syncOnce()); // Should succeed, and all files must then be deleted
@@ -139,8 +143,10 @@ private slots:
[&] { QVERIFY(false); });
QVERIFY(fakeFolder.syncOnce());
- for (const auto &s : fakeFolder.currentRemoteState().children.keys())
+ const auto childrenKeys = fakeFolder.currentRemoteState().children.keys();
+ for (const auto &s : childrenKeys) {
fakeFolder.syncJournal().avoidRenamesOnNextSync(s); // clears all the fileid and inodes.
+ }
fakeFolder.localModifier().remove("A/a1");
auto expectedState = fakeFolder.currentLocalState();
QVERIFY(fakeFolder.syncOnce());
diff --git a/test/testchunkingng.cpp b/test/testchunkingng.cpp
index 66f5a2d43..0c5175bf0 100644
--- a/test/testchunkingng.cpp
+++ b/test/testchunkingng.cpp
@@ -130,7 +130,8 @@ private slots:
// Remove the second chunk, so all further chunks will be deleted and resent
auto firstChunk = chunkMap.first();
auto secondChunk = *(chunkMap.begin() + 1);
- for (const auto& name : chunkMap.keys().mid(2)) {
+ const auto chunksList = chunkMap.keys().mid(2);
+ for (const auto& name : chunksList) {
chunksToDelete.append(name);
}
fakeFolder.uploadState().children.first().remove(secondChunk.name);
diff --git a/test/testfolderwatcher.cpp b/test/testfolderwatcher.cpp
index d8c7da092..19011f5bd 100644
--- a/test/testfolderwatcher.cpp
+++ b/test/testfolderwatcher.cpp
@@ -127,8 +127,10 @@ public:
int countFolders(const QString &path)
{
int n = 0;
- for (const auto &sub : QDir(path).entryList(QDir::Dirs | QDir::NoDotAndDotDot))
+ const auto entryList = QDir(path).entryList(QDir::Dirs | QDir::NoDotAndDotDot);
+ for (const auto &sub : entryList) {
n += 1 + countFolders(path + '/' + sub);
+ }
return n;
}
diff --git a/test/testsyncconflict.cpp b/test/testsyncconflict.cpp
index d43549304..2d78aad96 100644
--- a/test/testsyncconflict.cpp
+++ b/test/testsyncconflict.cpp
@@ -45,7 +45,7 @@ bool expectAndWipeConflict(FileModifier &local, FileInfo state, const QString pa
auto base = state.find(pathComponents.parentDirComponents());
if (!base)
return false;
- for (const auto &item : base->children) {
+ for (const auto &item : qAsConst(base->children)) {
if (item.name.startsWith(pathComponents.fileName()) && item.name.contains("(conflicted copy")) {
local.remove(item.path());
return true;
@@ -79,7 +79,8 @@ private slots:
QVERIFY(fakeFolder.syncOnce());
// Verify that the conflict names don't have the user name
- for (const auto &name : findConflicts(fakeFolder.currentLocalState().children["A"])) {
+ const auto conflicts = findConflicts(fakeFolder.currentLocalState().children["A"]);
+ for (const auto &name : conflicts) {
QVERIFY(!name.contains(fakeFolder.syncEngine().account()->davDisplayName()));
}
diff --git a/test/testsyncjournaldb.cpp b/test/testsyncjournaldb.cpp
index c0a1b8a7e..387ec99d0 100644
--- a/test/testsyncjournaldb.cpp
+++ b/test/testsyncjournaldb.cpp
@@ -289,12 +289,13 @@ private slots:
<< "foo bla bar/file"
<< "fo_"
<< "fo_/file";
- for (const auto& elem : elements)
+ for (const auto& elem : qAsConst(elements)) {
makeEntry(elem);
+ }
auto checkElements = [&]() {
bool ok = true;
- for (const auto& elem : elements) {
+ for (const auto& elem : qAsConst(elements)) {
SyncJournalFileRecord record;
if (!_db.getFileRecord(elem, &record) || !record.isValid()) {
qWarning() << "Missing record: " << elem;
diff --git a/test/testsyncmove.cpp b/test/testsyncmove.cpp
index f1488c818..8078d993b 100644
--- a/test/testsyncmove.cpp
+++ b/test/testsyncmove.cpp
@@ -70,7 +70,7 @@ bool expectAndWipeConflict(FileModifier &local, FileInfo state, const QString pa
auto base = state.find(pathComponents.parentDirComponents());
if (!base)
return false;
- for (const auto &item : base->children) {
+ for (const auto &item : qAsConst(base->children)) {
if (item.name.startsWith(pathComponents.fileName()) && item.name.contains("(conflicted copy")) {
local.remove(item.path());
return true;
@@ -593,7 +593,7 @@ private slots:
}
conflicts = findConflicts(currentLocal.children["B4"]);
QCOMPARE(conflicts.size(), 1);
- for (const auto& c : conflicts) {
+ for (const auto& c : qAsConst(conflicts)) {
QCOMPARE(currentLocal.find(c)->contentChar, 'L');
local.remove(c);
}