page source creation using BBP - hugo - [fork] hugo port for 9front
HTML git clone git@git.drkhsh.at/hugo.git
DIR Log
DIR Files
DIR Refs
DIR Submodules
DIR README
DIR LICENSE
---
DIR commit 77074127e073328a376b41933bd807e074ca4f37
DIR parent 4828fee11daf2c989aa40061ccf6ba7b7c685364
HTML Author: spf13 <steve.francia@gmail.com>
Date: Fri, 30 Jan 2015 11:42:02 -0800
page source creation using BBP
Diffstat:
M hugolib/page.go | 10 ++++++++--
1 file changed, 8 insertions(+), 2 deletions(-)
---
DIR diff --git a/hugolib/page.go b/hugolib/page.go
@@ -33,6 +33,7 @@ import (
"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) error {
}
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
}