diff --git a/lib/config/config.go b/lib/config/config.go index 6d0920c1..1d73db38 100644 --- a/lib/config/config.go +++ b/lib/config/config.go @@ -209,10 +209,14 @@ func (cfg *Configuration) prepare(myID protocol.DeviceID) { // Ensure that any loose devices are not present in the wrong places // Ensure that there are no duplicate devices // Ensure that puller settings are sane + // Ensure that the versioning configuration parameter map is not nil for i := range cfg.Folders { cfg.Folders[i].Devices = ensureDevicePresent(cfg.Folders[i].Devices, myID) cfg.Folders[i].Devices = ensureExistingDevices(cfg.Folders[i].Devices, existingDevices) cfg.Folders[i].Devices = ensureNoDuplicateFolderDevices(cfg.Folders[i].Devices) + if cfg.Folders[i].Versioning.Params == nil { + cfg.Folders[i].Versioning.Params = map[string]string{} + } sort.Sort(FolderDeviceConfigurationList(cfg.Folders[i].Devices)) } diff --git a/lib/model/model.go b/lib/model/model.go index ab2fbcde..ad34056e 100644 --- a/lib/model/model.go +++ b/lib/model/model.go @@ -1942,9 +1942,11 @@ func (m *Model) CommitConfiguration(from, to config.Configuration) bool { } } - // Check if anything else differs, apart from the device list. + // Check if anything else differs, apart from the device list and label. fromCfg.Devices = nil toCfg.Devices = nil + fromCfg.Label = "" + toCfg.Label = "" if !reflect.DeepEqual(fromCfg, toCfg) { l.Debugln(m, "requires restart, folder", folderID, "configuration differs") return false