|
|
@@ -344,11 +344,13 @@ func (m *Model) tearDownFolderLocked(cfg config.FolderConfiguration) {
|
|
|
// Stop the services running for this folder and wait for them to finish
|
|
|
// stopping to prevent races on restart.
|
|
|
tokens := m.folderRunnerTokens[cfg.ID]
|
|
|
+ m.pmut.Unlock()
|
|
|
m.fmut.Unlock()
|
|
|
for _, id := range tokens {
|
|
|
m.RemoveAndWait(id, 0)
|
|
|
}
|
|
|
m.fmut.Lock()
|
|
|
+ m.pmut.Lock()
|
|
|
|
|
|
// Close connections to affected devices
|
|
|
for _, dev := range cfg.Devices {
|