Replace *bytes.Buffer with io.Writer in rendering
authorDaniel Martí <mvdan@mvdan.cc>
Sun, 3 Jan 2016 11:53:45 +0000 (12:53 +0100)
committerBjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>
Tue, 5 Jan 2016 22:32:03 +0000 (23:32 +0100)
Found via github.com/mvdan/interfacer.

hugolib/site.go
tpl/template.go

index 4904c31b78ad654aedd6f0fa006e49785401fae7..648ba6454b178d44a4fe6cda0fb128937dd4fd28 100644 (file)
@@ -1691,14 +1691,14 @@ func (s *Site) renderAndWritePage(name string, dest string, d interface{}, layou
        return err
 }
 
-func (s *Site) render(name string, d interface{}, renderBuffer *bytes.Buffer, layouts ...string) error {
+func (s *Site) render(name string, d interface{}, w io.Writer, layouts ...string) error {
        layout, found := s.findFirstLayout(layouts...)
        if found == false {
                jww.WARN.Printf("Unable to locate layout for %s: %s\n", name, layouts)
                return nil
        }
 
-       if err := s.renderThing(d, layout, renderBuffer); err != nil {
+       if err := s.renderThing(d, layout, w); err != nil {
                // Behavior here should be dependent on if running in server or watch mode.
                distinctErrorLogger.Printf("Error while rendering %s: %v", name, err)
                if !s.Running() {
index e8b4b8d98767bbb5ec5b9ee013517a344db27339..c5a23628a14d7f9a28530c8bf3666df4604ee5ee 100644 (file)
@@ -14,7 +14,6 @@
 package tpl
 
 import (
-       "bytes"
        "fmt"
        "github.com/eknkc/amber"
        bp "github.com/spf13/hugo/bufferpool"
@@ -104,7 +103,7 @@ func Partial(name string, context_list ...interface{}) template.HTML {
        return ExecuteTemplateToHTML(context, "partials/"+name, "theme/partials/"+name)
 }
 
-func ExecuteTemplate(context interface{}, buffer *bytes.Buffer, layouts ...string) {
+func ExecuteTemplate(context interface{}, w io.Writer, layouts ...string) {
        worked := false
        for _, layout := range layouts {
 
@@ -115,7 +114,7 @@ func ExecuteTemplate(context interface{}, buffer *bytes.Buffer, layouts ...strin
                }
 
                if localTemplates.Lookup(name) != nil {
-                       err := localTemplates.ExecuteTemplate(buffer, name, context)
+                       err := localTemplates.ExecuteTemplate(w, name, context)
                        if err != nil {
                                jww.ERROR.Println(err, "in", name)
                        }