diff options
author | Bjørn Erik Pedersen <[email protected]> | 2021-06-09 10:58:18 +0200 |
---|---|---|
committer | Bjørn Erik Pedersen <[email protected]> | 2021-06-14 17:00:32 +0200 |
commit | d392893cd73dc00c927f342778f6dca9628d328e (patch) | |
tree | e2ea3eec09f36b7122ecdbc498c3c130e240e85c /langs/config.go | |
parent | a886dd53b80322e1edf924f2ede4d4ea037c5baf (diff) | |
download | hugo-d392893cd73dc00c927f342778f6dca9628d328e.tar.gz hugo-d392893cd73dc00c927f342778f6dca9628d328e.zip |
Misc config loading fixes
The main motivation behind this is simplicity and correctnes, but the new small config library is also faster:
```
BenchmarkDefaultConfigProvider/Viper-16 252418 4546 ns/op 2720 B/op 30 allocs/op
BenchmarkDefaultConfigProvider/Custom-16 450756 2651 ns/op 1008 B/op 6 allocs/op
```
Fixes #8633
Fixes #8618
Fixes #8630
Updates #8591
Closes #6680
Closes #5192
Diffstat (limited to 'langs/config.go')
-rw-r--r-- | langs/config.go | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/langs/config.go b/langs/config.go index 3b1da89ec..fe4ed9d14 100644 --- a/langs/config.go +++ b/langs/config.go @@ -43,13 +43,13 @@ func LoadLanguageSettings(cfg config.Provider, oldLangs Languages) (c LanguagesC var languages map[string]interface{} - languagesFromConfig := cfg.GetStringMap("languages") + languagesFromConfig := cfg.GetParams("languages") disableLanguages := cfg.GetStringSlice("disableLanguages") if len(disableLanguages) == 0 { languages = languagesFromConfig } else { - languages = make(map[string]interface{}) + languages = make(maps.Params) for k, v := range languagesFromConfig { for _, disabled := range disableLanguages { if disabled == defaultLang { @@ -57,7 +57,7 @@ func LoadLanguageSettings(cfg config.Provider, oldLangs Languages) (c LanguagesC } if strings.EqualFold(k, disabled) { - v.(map[string]interface{})["disabled"] = true + v.(maps.Params)["disabled"] = true break } } @@ -193,7 +193,7 @@ func toSortedLanguages(cfg config.Provider, l map[string]interface{}) (Languages case "params": m := maps.ToStringMap(v) // Needed for case insensitive fetching of params values - maps.ToLower(m) + maps.PrepareParams(m) for k, vv := range m { language.SetParam(k, vv) } |