mirror of
https://github.com/rclone/rclone.git
synced 2024-11-22 08:23:47 +01:00
fs: make sure config is persisted to the config file when using config.Mapper
This commit is contained in:
parent
fa539b9d9b
commit
24161d12ab
@ -4,6 +4,8 @@ import (
|
||||
"net"
|
||||
"strings"
|
||||
"time"
|
||||
|
||||
"github.com/pkg/errors"
|
||||
)
|
||||
|
||||
// Global
|
||||
@ -17,12 +19,12 @@ var (
|
||||
// implementation from the fs
|
||||
ConfigFileGet = func(section, key string) (string, bool) { return "", false }
|
||||
|
||||
// Set a value into the config file
|
||||
// Set a value into the config file and persist it
|
||||
//
|
||||
// This is a function pointer to decouple the config
|
||||
// implementation from the fs
|
||||
ConfigFileSet = func(section, key, value string) {
|
||||
Errorf(nil, "No config handler to set %q = %q in section %q of the config file", key, value, section)
|
||||
ConfigFileSet = func(section, key, value string) (err error) {
|
||||
return errors.New("no config file set handler")
|
||||
}
|
||||
|
||||
// CountError counts an error. If any errors have been
|
||||
|
@ -93,7 +93,7 @@ var (
|
||||
func init() {
|
||||
// Set the function pointers up in fs
|
||||
fs.ConfigFileGet = FileGetFlag
|
||||
fs.ConfigFileSet = FileSet
|
||||
fs.ConfigFileSet = SetValueAndSave
|
||||
}
|
||||
|
||||
func getConfigData() *goconfig.ConfigFile {
|
||||
|
5
fs/fs.go
5
fs/fs.go
@ -1150,7 +1150,10 @@ type setConfigFile string
|
||||
// Set a config item into the config file
|
||||
func (section setConfigFile) Set(key, value string) {
|
||||
Debugf(nil, "Saving config %q = %q in section %q of the config file", key, value, section)
|
||||
ConfigFileSet(string(section), key, value)
|
||||
err := ConfigFileSet(string(section), key, value)
|
||||
if err != nil {
|
||||
Errorf(nil, "Failed saving config %q = %q in section %q of the config file: %v", key, value, section, err)
|
||||
}
|
||||
}
|
||||
|
||||
// A configmap.Getter to read from the config file
|
||||
|
Loading…
Reference in New Issue
Block a user