aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGiteabot <teabot@gitea.io>2024-06-13 09:14:49 +0800
committerGitHub <noreply@github.com>2024-06-13 01:14:49 +0000
commit6ca70c5bf20fc6b3a7d98d784f48b5a503962339 (patch)
treeefe65ff79d37ea0532798eb4668a9cd1ecfc679e
parent95dfd945bc03510064038ae93f381b2b96bda3b0 (diff)
downloadgitea-6ca70c5bf20fc6b3a7d98d784f48b5a503962339.tar.gz
gitea-6ca70c5bf20fc6b3a7d98d784f48b5a503962339.zip
Fix hash render end with colon (#31319) (#31346)
Backport #31319 by @lunny Fix a hash render problem like `<hash>: xxxxx` which is usually used in release notes. Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
-rw-r--r--modules/markup/html.go2
-rw-r--r--modules/markup/html_internal_test.go1
2 files changed, 2 insertions, 1 deletions
diff --git a/modules/markup/html.go b/modules/markup/html.go
index 44f88bbd11..b436ff6c3d 100644
--- a/modules/markup/html.go
+++ b/modules/markup/html.go
@@ -49,7 +49,7 @@ var (
// hashCurrentPattern matches string that represents a commit SHA, e.g. d8a994ef243349f321568f9e36d5c3f444b99cae
// Although SHA1 hashes are 40 chars long, SHA256 are 64, the regex matches the hash from 7 to 64 chars in length
// so that abbreviated hash links can be used as well. This matches git and GitHub usability.
- hashCurrentPattern = regexp.MustCompile(`(?:\s|^|\(|\[)([0-9a-f]{7,64})(?:\s|$|\)|\]|[.,](\s|$))`)
+ hashCurrentPattern = regexp.MustCompile(`(?:\s|^|\(|\[)([0-9a-f]{7,64})(?:\s|$|\)|\]|[.,:](\s|$))`)
// shortLinkPattern matches short but difficult to parse [[name|link|arg=test]] syntax
shortLinkPattern = regexp.MustCompile(`\[\[(.*?)\]\](\w*)`)
diff --git a/modules/markup/html_internal_test.go b/modules/markup/html_internal_test.go
index 9aa9c22d70..74089cffdd 100644
--- a/modules/markup/html_internal_test.go
+++ b/modules/markup/html_internal_test.go
@@ -380,6 +380,7 @@ func TestRegExp_sha1CurrentPattern(t *testing.T) {
"(abcdefabcdefabcdefabcdefabcdefabcdefabcd)",
"[abcdefabcdefabcdefabcdefabcdefabcdefabcd]",
"abcdefabcdefabcdefabcdefabcdefabcdefabcd.",
+ "abcdefabcdefabcdefabcdefabcdefabcdefabcd:",
}
falseTestCases := []string{
"test",