Minor config cleanup

This commit is contained in:
Jakob Borg 2014-10-06 21:43:38 +02:00
parent 2979e0e964
commit 289d604690
2 changed files with 6 additions and 12 deletions

View File

@ -51,9 +51,10 @@ type FolderConfiguration struct {
ReadOnly bool `xml:"ro,attr"` ReadOnly bool `xml:"ro,attr"`
RescanIntervalS int `xml:"rescanIntervalS,attr" default:"60"` RescanIntervalS int `xml:"rescanIntervalS,attr" default:"60"`
IgnorePerms bool `xml:"ignorePerms,attr"` IgnorePerms bool `xml:"ignorePerms,attr"`
Invalid string `xml:"-"` // Set at runtime when there is an error, not saved
Versioning VersioningConfiguration `xml:"versioning"` Versioning VersioningConfiguration `xml:"versioning"`
Invalid string `xml:"-"` // Set at runtime when there is an error, not saved
deviceIDs []protocol.DeviceID deviceIDs []protocol.DeviceID
Deprecated_Directory string `xml:"directory,omitempty,attr" json:"-"` Deprecated_Directory string `xml:"directory,omitempty,attr" json:"-"`
@ -277,25 +278,18 @@ func (cfg *Configuration) prepare(myID protocol.DeviceID) {
// Build a list of available devices // Build a list of available devices
existingDevices := make(map[protocol.DeviceID]bool) existingDevices := make(map[protocol.DeviceID]bool)
existingDevices[myID] = true
for _, device := range cfg.Devices { for _, device := range cfg.Devices {
existingDevices[device.DeviceID] = true existingDevices[device.DeviceID] = true
} }
// Ensure this device is present in all relevant places // Ensure this device is present in the config
myIDExists := false if !existingDevices[myID] {
for _, dev := range cfg.Devices {
if dev.DeviceID == myID {
myIDExists = true
break
}
}
if !myIDExists {
myName, _ := os.Hostname() myName, _ := os.Hostname()
cfg.Devices = append(cfg.Devices, DeviceConfiguration{ cfg.Devices = append(cfg.Devices, DeviceConfiguration{
DeviceID: myID, DeviceID: myID,
Name: myName, Name: myName,
}) })
existingDevices[myID] = true
} }
sort.Sort(DeviceConfigurationList(cfg.Devices)) sort.Sort(DeviceConfigurationList(cfg.Devices))

View File

@ -60,7 +60,7 @@ func TestDefaultValues(t *testing.T) {
} }
func TestDeviceConfig(t *testing.T) { func TestDeviceConfig(t *testing.T) {
for i, ver := range []string{"v3", "v4", "v5"} { for i, ver := range []string{"v1", "v2", "v3", "v4", "v5"} {
wr, err := Load("testdata/"+ver+".xml", device1) wr, err := Load("testdata/"+ver+".xml", device1)
if err != nil { if err != nil {
t.Fatal(err) t.Fatal(err)