From c4079216440af73c03343f53a6a4734688c87b60 Mon Sep 17 00:00:00 2001 From: Unknwon Date: Fri, 2 Jun 2017 17:19:06 -0400 Subject: [PATCH] orgmode: recover panic from third-party package --- pkg/markup/orgmode.go | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/pkg/markup/orgmode.go b/pkg/markup/orgmode.go index c7f62f501..f62cced2c 100644 --- a/pkg/markup/orgmode.go +++ b/pkg/markup/orgmode.go @@ -8,6 +8,8 @@ import ( "path/filepath" "strings" + log "gopkg.in/clog.v1" + "github.com/chaseadamsio/goorgeous" ) @@ -25,7 +27,14 @@ func IsOrgModeFile(name string) bool { } // RawOrgMode renders content in Org-mode syntax to HTML without handling special links. -func RawOrgMode(body []byte, urlPrefix string) []byte { +func RawOrgMode(body []byte, urlPrefix string) (result []byte) { + // TODO: remove recover code once the third-party package is stable + defer func() { + if err := recover(); err != nil { + result = body + log.Warn("PANIC (RawOrgMode): %v", err) + } + }() return goorgeous.OrgCommon(body) }