]> git.maquefel.me Git - brevno-suite/hugo/commitdiff
Fix server panic on i18n file change
authorBjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>
Sat, 17 Feb 2024 10:09:09 +0000 (11:09 +0100)
committerBjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>
Sat, 17 Feb 2024 10:46:45 +0000 (11:46 +0100)
Fixes #12048

hugolib/hugo_sites_build.go

index aa43d541a9351959369f086a0bbadea96bbda110..3a046df3b1b278eb8e0241db15143d0947da53cf 100644 (file)
@@ -739,7 +739,6 @@ func (h *HugoSites) processPartial(ctx context.Context, l logg.LevelLogger, conf
 
                case files.ComponentFolderLayouts:
                        tmplChanged = true
-                       h.init.layouts.Reset()
                        templatePath := pathInfo.TrimLeadingSlash().PathNoLang()
                        if !h.Tmpl().HasTemplate(templatePath) {
                                tmplAdded = true
@@ -899,6 +898,9 @@ func (h *HugoSites) processPartial(ctx context.Context, l logg.LevelLogger, conf
        }
 
        if tmplChanged || i18nChanged {
+               // TODO(bep) we should split this, but currently the loading of i18n and layout files are tied together. See #12048.
+               h.init.layouts.Reset()
+
                if err := loggers.TimeTrackfn(func() (logg.LevelLogger, error) {
                        // TODO(bep) this could probably be optimized to somehow
                        // only load the changed templates and its dependencies, but that is non-trivial.