From 4e393e186981fa95f7d4158cd39d877877387f60 Mon Sep 17 00:00:00 2001 From: Erik Verbruggen Date: Thu, 14 Oct 2021 17:32:55 +0200 Subject: [PATCH] Fix propagation of ignore list changes Previously, when changing the ignore list, those changes would not be propagated to existing sync folders. Only after restarting the client, would these changes be applied. https://github.com/owncloud/client/issues/8975 https://github.com/owncloud/client/pull/9149 --- changelog/unreleased/9149 | 7 +++++++ src/gui/folder.h | 5 +++-- src/gui/ignorelisteditor.cpp | 1 + 3 files changed, 11 insertions(+), 2 deletions(-) create mode 100644 changelog/unreleased/9149 diff --git a/changelog/unreleased/9149 b/changelog/unreleased/9149 new file mode 100644 index 00000000000..ee64595e46d --- /dev/null +++ b/changelog/unreleased/9149 @@ -0,0 +1,7 @@ +Fix propagation of ignore list changes + +Previously, when changing the ignore list, those changes would not be +propagated to existing sync folders. Only after restarting the client, +would these changes be applied. + +Fixes: #8975 diff --git a/src/gui/folder.h b/src/gui/folder.h index 3f7d3073734..adc64659ece 100644 --- a/src/gui/folder.h +++ b/src/gui/folder.h @@ -374,6 +374,9 @@ public slots: */ void schedulePathForLocalDiscovery(const QString &relativePath); + /// Reloads the excludes, used when changing the user-defined excludes after saving them to disk. + bool reloadExcludes(); + private slots: void slotSyncStarted(); void slotSyncFinished(bool); @@ -425,8 +428,6 @@ private slots: private: void connectSyncRoot(); - bool reloadExcludes(); - void showSyncResultPopup(); bool checkLocalPath(); diff --git a/src/gui/ignorelisteditor.cpp b/src/gui/ignorelisteditor.cpp index 0b11543cbdc..f6882e300d0 100644 --- a/src/gui/ignorelisteditor.cpp +++ b/src/gui/ignorelisteditor.cpp @@ -121,6 +121,7 @@ void IgnoreListEditor::slotUpdateLocalIgnoreList() // ignored (because the remote etag did not change) (issue #3172) for (auto *folder : folderMan->map()) { folder->journalDb()->forceRemoteDiscoveryNextSync(); + folder->reloadExcludes(); folder->slotNextSyncFullLocalDiscovery(); folderMan->scheduleFolder(folder); }