summaryrefslogtreecommitdiff
path: root/plugin/src
diff options
context:
space:
mode:
Diffstat (limited to 'plugin/src')
-rw-r--r--plugin/src/Caelestia/Models/filesystemmodel.cpp11
1 files changed, 5 insertions, 6 deletions
diff --git a/plugin/src/Caelestia/Models/filesystemmodel.cpp b/plugin/src/Caelestia/Models/filesystemmodel.cpp
index b7889f0..536f14b 100644
--- a/plugin/src/Caelestia/Models/filesystemmodel.cpp
+++ b/plugin/src/Caelestia/Models/filesystemmodel.cpp
@@ -276,9 +276,13 @@ void FileSystemModel::updateEntriesForDir(const QString& dir) {
const auto showHidden = m_showHidden;
const auto filter = m_filter;
const auto nameFilters = m_nameFilters;
- const auto oldEntries = m_entries;
const auto baseDir = m_dir;
+ QSet<QString> oldPaths;
+ for (const auto& entry : m_entries) {
+ oldPaths << entry->path();
+ }
+
const auto future = QtConcurrent::run([=](QPromise<QPair<QSet<QString>, QSet<QString>>>& promise) {
const auto flags = recursive ? QDirIterator::Subdirectories : QDirIterator::NoIteratorFlags;
@@ -336,11 +340,6 @@ void FileSystemModel::updateEntriesForDir(const QString& dir) {
newPaths.insert(path);
}
- QSet<QString> oldPaths;
- for (const auto& entry : oldEntries) {
- oldPaths.insert(entry->path());
- }
-
if (promise.isCanceled() || newPaths == oldPaths) {
return;
}