diff --git a/modules/markup/html.go b/modules/markup/html.go index b5c0e405a..b5aadb2ad 100644 --- a/modules/markup/html.go +++ b/modules/markup/html.go @@ -867,7 +867,7 @@ func issueIndexPatternProcessor(ctx *RenderContext, node *html.Node) { var link *html.Node reftext := node.Data[ref.RefLocation.Start:ref.RefLocation.End] - if hasExtTrackFormat && !ref.IsPull { + if hasExtTrackFormat && !ref.IsPull && ref.Owner == "" { ctx.Metas["index"] = ref.Issue res, err := vars.Expand(ctx.Metas["format"], ctx.Metas) diff --git a/modules/markup/html_internal_test.go b/modules/markup/html_internal_test.go index 17eff59d5..adc93adb2 100644 --- a/modules/markup/html_internal_test.go +++ b/modules/markup/html_internal_test.go @@ -342,6 +342,22 @@ func TestRender_AutoLink(t *testing.T) { test(tmp, "d8a994ef24 (diff-2)") } +func TestRender_IssueIndexPatternRef(t *testing.T) { + setting.AppURL = TestAppURL + + test := func(input, expected string) { + var buf strings.Builder + err := postProcess(&RenderContext{ + Ctx: git.DefaultContext, + Metas: numericMetas, + }, []processor{issueIndexPatternProcessor}, strings.NewReader(input), &buf) + require.NoError(t, err) + assert.Equal(t, expected, buf.String(), "input=%q", input) + } + + test("alan-turin/Enigma-cryptanalysis#1", `alan-turin/Enigma-cryptanalysis#1`) +} + func TestRender_FullIssueURLs(t *testing.T) { setting.AppURL = TestAppURL