From babcb339a848842705c1418b2895ab31f7ddb735 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B8rn=20Erik=20Pedersen?= Date: Thu, 25 Apr 2024 13:28:42 +0200 Subject: [PATCH] config: Setups with only one active language can never be multihost Fixes #12288 --- config/allconfig/configlanguage.go | 3 +++ hugolib/hugo_sites_multihost_test.go | 28 ++++++++++++++++++++++++++++ 2 files changed, 31 insertions(+) diff --git a/config/allconfig/configlanguage.go b/config/allconfig/configlanguage.go index 900db75ce..c7f1c276a 100644 --- a/config/allconfig/configlanguage.go +++ b/config/allconfig/configlanguage.go @@ -71,6 +71,9 @@ func (c ConfigLanguage) Environment() string { } func (c ConfigLanguage) IsMultihost() bool { + if len(c.m.Languages)-len(c.config.C.DisabledLanguages) <= 1 { + return false + } return c.m.IsMultihost } diff --git a/hugolib/hugo_sites_multihost_test.go b/hugolib/hugo_sites_multihost_test.go index 937166146..004da351d 100644 --- a/hugolib/hugo_sites_multihost_test.go +++ b/hugolib/hugo_sites_multihost_test.go @@ -252,3 +252,31 @@ Files: {{ range $files }}{{ .Permalink }}|{{ end }}$ b.AssertFileContent("public/en/enpages/mybundle-en/file2.txt", "File 2 en.") b.AssertFileContent("public/fr/section/mybundle/file2.txt", "File 2 en.") } + +func TestMultihostAllButOneLanguageDisabledIssue12288(t *testing.T) { + t.Parallel() + + files := ` +-- hugo.toml -- +defaultContentLanguage = "en" +disableLanguages = ["fr"] +#baseURL = "https://example.com" +[languages] +[languages.en] +baseURL = "https://example.en" +weight = 1 +[languages.fr] +baseURL = "https://example.fr" +weight = 2 +-- assets/css/main.css -- +body { color: red; } +-- layouts/index.html -- +{{ $css := resources.Get "css/main.css" | minify }} +CSS: {{ $css.Permalink }}|{{ $css.RelPermalink }}| +` + + b := Test(t, files) + + b.AssertFileContent("public/css/main.min.css", "body{color:red}") + b.AssertFileContent("public/index.html", "CSS: https://example.en/css/main.min.css|/css/main.min.css|") +}