diff --git a/src/main/scala/gitbucket/core/view/LinkConverter.scala b/src/main/scala/gitbucket/core/view/LinkConverter.scala index 5b689d92f..cbfac591b 100644 --- a/src/main/scala/gitbucket/core/view/LinkConverter.scala +++ b/src/main/scala/gitbucket/core/view/LinkConverter.scala @@ -3,23 +3,23 @@ package gitbucket.core.view import gitbucket.core.controller.Context import gitbucket.core.service.{RepositoryService, RequestCache} import gitbucket.core.util.Implicits.RichString +import gitbucket.core.util.StringUtil trait LinkConverter { self: RequestCache => /** * Creates a link to the issue or the pull request from the issue id. */ - protected def createIssueLink(repository: RepositoryService.RepositoryInfo, issueId: Int)( + protected def createIssueLink(repository: RepositoryService.RepositoryInfo, issueId: Int, title: String)( implicit context: Context ): String = { val userName = repository.repository.userName val repositoryName = repository.repository.repositoryName getIssue(userName, repositoryName, issueId.toString) match { - case Some(issue) if (issue.isPullRequest) => - s"""Pull #${issueId}""" - case Some(_) => - s"""Issue #${issueId}""" + case Some(issue) => + s"""${StringUtil + .escapeHtml(title)} #${issueId}""" case None => s"Unknown #${issueId}" } diff --git a/src/main/scala/gitbucket/core/view/helpers.scala b/src/main/scala/gitbucket/core/view/helpers.scala index 4e757c79d..e3a8d6a13 100644 --- a/src/main/scala/gitbucket/core/view/helpers.scala +++ b/src/main/scala/gitbucket/core/view/helpers.scala @@ -156,8 +156,10 @@ object helpers extends AvatarImageProvider with LinkConverter with RequestCache /** * Creates a link to the issue or the pull request from the issue id. */ - def issueLink(repository: RepositoryService.RepositoryInfo, issueId: Int)(implicit context: Context): Html = { - Html(createIssueLink(repository, issueId)) + def issueLink(repository: RepositoryService.RepositoryInfo, issueId: Int, title: String)( + implicit context: Context + ): Html = { + Html(createIssueLink(repository, issueId, title)) } /** diff --git a/src/main/twirl/gitbucket/core/issues/commentlist.scala.html b/src/main/twirl/gitbucket/core/issues/commentlist.scala.html index cfb809f62..8f7f911e0 100644 --- a/src/main/twirl/gitbucket/core/issues/commentlist.scala.html +++ b/src/main/twirl/gitbucket/core/issues/commentlist.scala.html @@ -112,7 +112,7 @@
@defining(comment.content.split(":")){ case Array(issueId, rest @ _*) => - @helpers.issueLink(repository, issueId.toInt): @rest.mkString(":") + @helpers.issueLink(repository, issueId.toInt, rest.mkString(":")) }