From 4d4bfe8032a5164384113ab4092015edfc22f0f7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Colomb?= Date: Wed, 10 Aug 2022 08:50:19 +0200 Subject: [PATCH] lib/model: Skip paused folders in aggregated completion loop (fixes #8219) (#8220) Locally paused folders will fail on checkFolderRunningLocked() and therefore abort the loop. Avoid this by skipping paused folders directly. Co-authored-by: Jakob Borg --- lib/model/model.go | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/lib/model/model.go b/lib/model/model.go index 9fdc39d38..0f66cbedd 100644 --- a/lib/model/model.go +++ b/lib/model/model.go @@ -877,9 +877,14 @@ func (m *model) Completion(device protocol.DeviceID, folder string) (FolderCompl // We want completion for all (shared) folders as an aggregate. var comp FolderCompletion for _, fcfg := range m.cfg.FolderList() { + if fcfg.Paused { + continue + } if device == protocol.LocalDeviceID || fcfg.SharedWith(device) { folderComp, err := m.folderCompletion(device, fcfg.ID) - if err != nil { + if errors.Is(err, ErrFolderPaused) { + continue + } else if err != nil { return FolderCompletion{}, err } comp.add(folderComp)