From 3c0a9e2991b5c36cb972449c23b906aeb42ad241 Mon Sep 17 00:00:00 2001 From: Christian Muehlhaeuser Date: Fri, 13 Dec 2019 22:36:55 +0100 Subject: [PATCH] Don't panic, forward the error to the caller --- gold.go | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/gold.go b/gold.go index 83119a8..ef736c9 100644 --- a/gold.go +++ b/gold.go @@ -41,7 +41,7 @@ func RenderBytes(in []byte, stylePath string) ([]byte, error) { if err != nil { return nil, err } - return r.RenderBytes(in), nil + return r.RenderBytes(in) } // NewTermRenderer returns a new TermRenderer with style and options set. @@ -73,12 +73,13 @@ func NewTermRendererFromBytes(b []byte, options Options) (*TermRenderer, error) } // Render returns the markdown rendered into a string. -func (tr *TermRenderer) Render(in string) string { - return string(tr.RenderBytes([]byte(in))) +func (tr *TermRenderer) Render(in string) (string, error) { + b, err := tr.RenderBytes([]byte(in)) + return string(b), err } // RenderBytes returns the markdown rendered into a byte slice. -func (tr *TermRenderer) RenderBytes(in []byte) []byte { +func (tr *TermRenderer) RenderBytes(in []byte) ([]byte, error) { md := goldmark.New( goldmark.WithExtensions( extension.GFM, @@ -93,13 +94,11 @@ func (tr *TermRenderer) RenderBytes(in []byte) []byte { renderer.WithNodeRenderers(util.Prioritized(tr, 1000)))) var buf bytes.Buffer - if err := md.Convert(in, &buf); err != nil { - panic(err) - } - return buf.Bytes() + err := md.Convert(in, &buf) + return buf.Bytes(), err } -// RegisterFuncs implements NodeRenderer.RegisterFuncs . +// RegisterFuncs implements NodeRenderer.RegisterFuncs. func (r *TermRenderer) RegisterFuncs(reg renderer.NodeRendererFuncRegisterer) { // blocks reg.Register(ast.KindDocument, r.renderNode)