From: Cameron Moore Date: Sun, 17 Jan 2021 05:05:58 +0000 (-0600) Subject: tpl: Fix race condition in text template baseof X-Git-Tag: v0.81.0~53 X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=241b7483ea954653512d4895ad6bacf79ee26ddc;p=brevno-suite%2Fhugo tpl: Fix race condition in text template baseof Copy most of the htmltemplate cloning to the textemplate implementation in the same function. --- diff --git a/tpl/tplimpl/template.go b/tpl/tplimpl/template.go index eb91ab83..60e3b7df 100644 --- a/tpl/tplimpl/template.go +++ b/tpl/tplimpl/template.go @@ -598,10 +598,16 @@ func (t *templateHandler) applyBaseTemplate(overlay, base templateInfo) (tpl.Tem } } - templ, err = templ.Parse(overlay.template) + templ, err = texttemplate.Must(templ.Clone()).Parse(overlay.template) if err != nil { return nil, overlay.errWithFileContext("parse failed", err) } + + // The extra lookup is a workaround, see + // * https://github.com/golang/go/issues/16101 + // * https://github.com/gohugoio/hugo/issues/2549 + // templ = templ.Lookup(templ.Name()) + return templ, nil }