From: Bjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com> Date: Fri, 19 Jan 2018 07:24:10 +0000 (+0100) Subject: hugolib: Add validation for defaultContentLanguage X-Git-Tag: v0.34~9 X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=4d5e4f379a890a3c6cbc11ddb40d77a90f14c015;p=brevno-suite%2Fhugo hugolib: Add validation for defaultContentLanguage When `languages` are defined, then `defaultContentLanguage` must match one of those. Fixes #4298 --- diff --git a/hugolib/config.go b/hugolib/config.go index 8e06d3e8..f1b6ebe5 100644 --- a/hugolib/config.go +++ b/hugolib/config.go @@ -131,6 +131,22 @@ func loadLanguageSettings(cfg config.Provider, oldLangs helpers.Languages) error } } + defaultLang := cfg.GetString("defaultContentLanguage") + + // The defaultContentLanguage is something the user has to decide, but it needs + // to match a language in the language definition list. + langExists := false + for _, lang := range langs { + if lang.Lang == defaultLang { + langExists = true + break + } + } + + if !langExists { + return fmt.Errorf("site config value %q for defaultContentLanguage does not match any language definition", defaultLang) + } + cfg.Set("languagesSorted", langs) cfg.Set("multilingual", len(langs) > 1)