restore backup if file corrupted

This commit is contained in:
Matthew R. Kasun 2022-09-07 09:47:07 -04:00
parent c1bb343af6
commit 8eef12036d

View file

@ -288,8 +288,18 @@ func ReadConfig(network string) (*ClientConfig, error) {
decoder := yaml.NewDecoder(f)
err = decoder.Decode(&cfg)
if err != nil {
logger.Log(2, "trouble decoding file", err.Error())
return nil, err
if err = ReplaceWithBackup(network); err != nil {
return nil, err
}
f.Close()
f, err = os.Open(file)
if err != nil {
return nil, err
}
defer f.Close()
if err := yaml.NewDecoder(f).Decode(&cfg); err != nil {
return nil, err
}
}
return &cfg, err