Browse Source

modules/markdown: fix wrong raw link to internal images

Unknwon 7 years ago
parent
commit
8b73c8076f
3 changed files with 16 additions and 7 deletions
  1. 1 1
      gogs.go
  2. 14 5
      modules/markdown/markdown.go
  3. 1 1
      templates/.VERSION

+ 1 - 1
gogs.go

@@ -16,7 +16,7 @@ import (
 	"github.com/gogits/gogs/modules/setting"
 )
 
-const APP_VER = "0.10.5.0304"
+const APP_VER = "0.10.6.0305"
 
 func init() {
 	setting.AppVer = APP_VER

+ 14 - 5
modules/markdown/markdown.go

@@ -343,16 +343,25 @@ func wrapImgWithLink(urlPrefix string, buf *bytes.Buffer, token html.Token) {
 		return
 	}
 
-	buf.WriteString(`<a href="`)
-	buf.WriteString(src)
-	buf.WriteString(`">`)
-
 	// Prepend repository base URL for internal links
-	if !isLink([]byte(src)) {
+	needPrepend := !isLink([]byte(src))
+	if needPrepend {
 		urlPrefix = strings.Replace(urlPrefix, "/src/", "/raw/", 1)
 		if src[0] != '/' {
 			urlPrefix += "/"
 		}
+	}
+
+	buf.WriteString(`<a href="`)
+	if needPrepend {
+		buf.WriteString(urlPrefix)
+		buf.WriteString(src)
+	} else {
+		buf.WriteString(src)
+	}
+	buf.WriteString(`">`)
+
+	if needPrepend {
 		src = strings.Replace(urlPrefix+string(src), " ", "%20", -1)
 		buf.WriteString(`<img src="`)
 		buf.WriteString(src)

+ 1 - 1
templates/.VERSION

@@ -1 +1 @@
-0.10.5.0304
+0.10.6.0305