ref: 77074127e073328a376b41933bd807e074ca4f37
parent: 4828fee11daf2c989aa40061ccf6ba7b7c685364
author: spf13 <[email protected]>
date: Fri Jan 30 06:42:02 EST 2015
page source creation using BBP
--- a/hugolib/page.go
+++ b/hugolib/page.go
@@ -33,6 +33,7 @@
"time"
"github.com/spf13/cast"
+ bp "github.com/spf13/hugo/bufferpool"
"github.com/spf13/hugo/hugofs"
"github.com/spf13/hugo/source"
"github.com/spf13/hugo/tpl"
@@ -688,11 +689,16 @@
}
func (page *Page) saveSourceAs(path string, safe bool) error {
- b := new(bytes.Buffer)
+ b := bp.GetBuffer()
+ defer bp.PutBuffer(b)
+
b.Write(page.Source.Frontmatter)
b.Write(page.Source.Content)
- err := page.saveSource(b.Bytes(), path, safe)
+ bc := make([]byte, b.Len(), b.Len())
+ copy(bc, b.Bytes())
+
+ err := page.saveSource(bc, path, safe)
if err != nil {
return err
}