mirror of
https://github.com/golang/go
synced 2024-09-29 11:34:32 -06:00
text/template: avoid allocating a new common in copy
Template.New calls t.init, which allocates several items that are immediately rewritten by copy, so avoid the call to New Change-Id: I16c7cb001bbcd14cf547c1a2db2734a2f8214e7e Reviewed-on: https://go-review.googlesource.com/c/go/+/182757 Run-TryBot: Daniel Martí <mvdan@mvdan.cc> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Daniel Martí <mvdan@mvdan.cc>
This commit is contained in:
parent
32b9e568d8
commit
4a4f752c38
@ -110,12 +110,13 @@ func (t *Template) Clone() (*Template, error) {
|
||||
|
||||
// copy returns a shallow copy of t, with common set to the argument.
|
||||
func (t *Template) copy(c *common) *Template {
|
||||
nt := New(t.name)
|
||||
nt.Tree = t.Tree
|
||||
nt.common = c
|
||||
nt.leftDelim = t.leftDelim
|
||||
nt.rightDelim = t.rightDelim
|
||||
return nt
|
||||
return &Template{
|
||||
name: t.name,
|
||||
Tree: t.Tree,
|
||||
common: c,
|
||||
leftDelim: t.leftDelim,
|
||||
rightDelim: t.rightDelim,
|
||||
}
|
||||
}
|
||||
|
||||
// AddParseTree adds parse tree for template with given name and associates it with t.
|
||||
|
Loading…
Reference in New Issue
Block a user