hugo

Unnamed repository; edit this file 'description' to name the repository.

git clone git://git.shimmy1996.com/hugo.git
commit 12530519d8fb4513c9c18a6494099b7dff8e4fd4
parent f55d2f43769053b80b419a690554e747dc5dcede
Author: Bjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>
Date:   Tue,  8 Jun 2021 09:48:22 +0200

Fix nested OS env config override when parent does not exist

Fixes #8618

Diffstat:
Mhugolib/config.go | 2+-
Mhugolib/config_test.go | 5+++++
2 files changed, 6 insertions(+), 1 deletion(-)
diff --git a/hugolib/config.go b/hugolib/config.go
@@ -221,7 +221,7 @@ func LoadConfig(d ConfigSourceDescriptor, doWithConfig ...func(cfg config.Provid
 			} else if nestedKey != "" {
 				owner[nestedKey] = env.Value
 			} else {
-				v.Set(env.Key, env.Value)
+				v.Set(strings.ReplaceAll(env.Key, delim, "."), env.Value)
 			}
 		}
 
diff --git a/hugolib/config_test.go b/hugolib/config_test.go
@@ -530,11 +530,14 @@ theme_param="themevalue2"
 		"HUGOxPARAMSxMYTHEME_SECTION2xTHEME_PARAM", "themevalue2_changed",
 		"HUGO_PARAMS_EMPTY", ``,
 		"HUGO_PARAMS_HTML", `<a target="_blank" />`,
+		//
+		"HUGO_SERVICES_GOOGLEANALYTICS_ID", `gaid`,
 	)
 
 	b.Build(BuildCfg{})
 
 	cfg := b.H.Cfg
+	scfg := b.H.Sites[0].siteConfigConfig.Services
 
 	c.Assert(cfg.Get("environment"), qt.Equals, "test")
 	c.Assert(cfg.GetBool("enablegitinfo"), qt.Equals, false)
@@ -551,4 +554,6 @@ theme_param="themevalue2"
 	c.Assert(cfg.Get("params.mytheme_section2.theme_param"), qt.Equals, "themevalue2_changed")
 	c.Assert(cfg.Get("params.empty"), qt.Equals, ``)
 	c.Assert(cfg.Get("params.html"), qt.Equals, `<a target="_blank" />`)
+
+	c.Assert(scfg.GoogleAnalytics.ID, qt.Equals, "gaid")
 }