summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLunny Xiao <xiaolunwen@gmail.com>2019-05-26 01:15:39 +0800
committerzeripath <art27@cantab.net>2019-05-25 18:15:39 +0100
commit355ab0c62c1d58200d68e30d112db398ea00297a (patch)
tree15acaf368cbf16ffd2fc2102c13ca9536f5a0145
parent0c432d26fe20d3e50da566cf75fa483376ed8bef (diff)
downloadgitea-355ab0c62c1d58200d68e30d112db398ea00297a.tar.gz
gitea-355ab0c62c1d58200d68e30d112db398ea00297a.zip
Fix wrong init dependency on markup extensions (#7038)
* fix wrong init dependency on markup extensions
-rw-r--r--cmd/web.go3
-rw-r--r--contrib/pr/checkout.go2
-rw-r--r--modules/markup/markup.go8
-rw-r--r--routers/init.go2
4 files changed, 12 insertions, 3 deletions
diff --git a/cmd/web.go b/cmd/web.go
index 6da6ec942e..e6d0300a15 100644
--- a/cmd/web.go
+++ b/cmd/web.go
@@ -15,7 +15,6 @@ import (
"strings"
"code.gitea.io/gitea/modules/log"
- "code.gitea.io/gitea/modules/markup/external"
"code.gitea.io/gitea/modules/setting"
"code.gitea.io/gitea/routers"
"code.gitea.io/gitea/routers/routes"
@@ -111,8 +110,6 @@ func runWeb(ctx *cli.Context) error {
routers.GlobalInit()
- external.RegisterParsers()
-
m := routes.NewMacaron()
routes.RegisterRoutes(m)
diff --git a/contrib/pr/checkout.go b/contrib/pr/checkout.go
index 7af27c2a9e..880c029510 100644
--- a/contrib/pr/checkout.go
+++ b/contrib/pr/checkout.go
@@ -20,6 +20,7 @@ import (
"strconv"
"time"
+ "code.gitea.io/gitea/modules/markup"
"code.gitea.io/gitea/modules/markup/external"
"code.gitea.io/gitea/routers"
"code.gitea.io/gitea/routers/routes"
@@ -113,6 +114,7 @@ func runPR() {
log.Printf("[PR] Setting up router\n")
//routers.GlobalInit()
external.RegisterParsers()
+ markup.Init()
m := routes.NewMacaron()
routes.RegisterRoutes(m)
diff --git a/modules/markup/markup.go b/modules/markup/markup.go
index 0ea4099600..dc43b533c0 100644
--- a/modules/markup/markup.go
+++ b/modules/markup/markup.go
@@ -15,6 +15,14 @@ import (
func Init() {
getIssueFullPattern()
NewSanitizer()
+
+ // since setting maybe changed extensions, this will reload all parser extensions mapping
+ extParsers = make(map[string]Parser)
+ for _, parser := range parsers {
+ for _, ext := range parser.Extensions() {
+ extParsers[strings.ToLower(ext)] = parser
+ }
+ }
}
// Parser defines an interface for parsering markup file to HTML
diff --git a/routers/init.go b/routers/init.go
index 88422cc6ed..cfeb928819 100644
--- a/routers/init.go
+++ b/routers/init.go
@@ -19,6 +19,7 @@ import (
"code.gitea.io/gitea/modules/log"
"code.gitea.io/gitea/modules/mailer"
"code.gitea.io/gitea/modules/markup"
+ "code.gitea.io/gitea/modules/markup/external"
"code.gitea.io/gitea/modules/setting"
"code.gitea.io/gitea/modules/ssh"
@@ -75,6 +76,7 @@ func GlobalInit() {
if setting.InstallLock {
highlight.NewContext()
+ external.RegisterParsers()
markup.Init()
if err := initDBEngine(); err == nil {
log.Info("ORM engine initialization successful!")