Fix bug in UpdateConfig

Fixes https://github.com/thrasher-/gocryptotrader/issues/124
This commit is contained in:
Adrian Gallagher
2018-05-09 22:11:16 +10:00
parent d882c1dff4
commit 981b600f91

View File

@@ -512,14 +512,9 @@ func (c *Config) SaveConfig(configPath string) error {
return nil
}
// LoadConfig loads your configuration file into your configuration object
func (c *Config) LoadConfig(configPath string) error {
err := c.ReadConfig(configPath)
if err != nil {
return fmt.Errorf(ErrFailureOpeningConfig, configPath, err)
}
err = c.CheckExchangeConfigValues()
// CheckConfig checks all config settings
func (c *Config) CheckConfig() error {
err := c.CheckExchangeConfigValues()
if err != nil {
return fmt.Errorf(ErrCheckingConfigValues, err)
}
@@ -568,29 +563,34 @@ func (c *Config) LoadConfig(configPath string) error {
return nil
}
// LoadConfig loads your configuration file into your configuration object
func (c *Config) LoadConfig(configPath string) error {
err := c.ReadConfig(configPath)
if err != nil {
return fmt.Errorf(ErrFailureOpeningConfig, configPath, err)
}
return c.CheckConfig()
}
// UpdateConfig updates the config with a supplied config file
func (c *Config) UpdateConfig(configPath string, newCfg Config) error {
if c.Name != newCfg.Name && newCfg.Name != "" {
c.Name = newCfg.Name
}
err := newCfg.CheckExchangeConfigValues()
err := newCfg.CheckConfig()
if err != nil {
return err
}
c.Exchanges = newCfg.Exchanges
if c.CurrencyPairFormat != newCfg.CurrencyPairFormat {
c.CurrencyPairFormat = newCfg.CurrencyPairFormat
}
c.Name = newCfg.Name
c.EncryptConfig = newCfg.EncryptConfig
c.Cryptocurrencies = newCfg.Cryptocurrencies
c.CurrencyExchangeProvider = newCfg.CurrencyExchangeProvider
c.CurrencyPairFormat = newCfg.CurrencyPairFormat
c.FiatDisplayCurrency = newCfg.FiatDisplayCurrency
c.GlobalHTTPTimeout = newCfg.GlobalHTTPTimeout
c.Portfolio = newCfg.Portfolio
err = newCfg.CheckSMSGlobalConfigValues()
if err != nil {
return err
}
c.SMS = newCfg.SMS
c.Webserver = newCfg.Webserver
c.Exchanges = newCfg.Exchanges
err = c.SaveConfig(configPath)
if err != nil {