shithub: hugo

Download patch

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
 	}