diff --git a/src/kitemviews/kfileitemmodel.cpp b/src/kitemviews/kfileitemmodel.cpp index b89fe4f58e..08407d1efb 100644 --- a/src/kitemviews/kfileitemmodel.cpp +++ b/src/kitemviews/kfileitemmodel.cpp @@ -917,7 +917,9 @@ void KFileItemModel::slotCompleted() // Note that the parent folder must be expanded before any of its subfolders become visible. // Therefore, some URLs in m_restoredExpandedUrls might not be visible yet // -> we expand the first visible URL we find in m_restoredExpandedUrls. - for (const QUrl& url : qAsConst(m_urlsToExpand)) { + QMutableSetIterator it(m_urlsToExpand); + while (it.hasNext()) { + const QUrl url = it.next(); const int indexForUrl = index(url); if (indexForUrl >= 0) { m_urlsToExpand.remove(url); diff --git a/src/kitemviews/kfileitemmodelrolesupdater.cpp b/src/kitemviews/kfileitemmodelrolesupdater.cpp index b9c6ccd295..8f3ddceed8 100644 --- a/src/kitemviews/kfileitemmodelrolesupdater.cpp +++ b/src/kitemviews/kfileitemmodelrolesupdater.cpp @@ -943,7 +943,9 @@ void KFileItemModelRolesUpdater::updateChangedItems() QList visibleChangedIndexes; QList invisibleChangedIndexes; - for (const KFileItem& item : qAsConst(m_changedItems)) { + QMutableSetIterator it(m_changedItems); + while (it.hasNext()) { + const KFileItem item = it.next(); const int index = m_model->index(item); if (index < 0) { diff --git a/src/kitemviews/kitemlistview.cpp b/src/kitemviews/kitemlistview.cpp index 3103012a99..4ed0d7ba42 100644 --- a/src/kitemviews/kitemlistview.cpp +++ b/src/kitemviews/kitemlistview.cpp @@ -1155,7 +1155,10 @@ void KItemListView::slotItemsRemoved(const KItemRangeList& itemRanges) QVector itemsToMove; // Remove all KItemListWidget instances that got deleted - for (KItemListWidget* widget : qAsConst(m_visibleItems)) { + QMutableHashIterator it(m_visibleItems); + while (it.hasNext()) { + it.next(); + KItemListWidget* widget = it.value(); const int i = widget->index(); if (i < firstRemovedIndex) { continue;