diff --git a/lib/model/model.go b/lib/model/model.go index 6ae0a590..87a0d8d2 100644 --- a/lib/model/model.go +++ b/lib/model/model.go @@ -1062,8 +1062,7 @@ func (m *model) ClusterConfig(deviceID protocol.DeviceID, cm protocol.ClusterCon } } - m.fmut.Lock() - defer m.fmut.Unlock() + m.fmut.RLock() var paused []string for _, folder := range cm.Folders { cfg, ok := m.cfg.Folder(folder.ID) @@ -1184,6 +1183,7 @@ func (m *model) ClusterConfig(deviceID protocol.DeviceID, cm protocol.ClusterCon // implementing suture.IsCompletable). m.Add(is) } + m.fmut.RUnlock() m.pmut.Lock() m.remotePausedFolders[deviceID] = paused