aboutsummaryrefslogtreecommitdiffstats
path: root/modules/convert
diff options
context:
space:
mode:
Diffstat (limited to 'modules/convert')
-rw-r--r--modules/convert/git_commit.go11
-rw-r--r--modules/convert/issue.go3
-rw-r--r--modules/convert/notification.go4
3 files changed, 11 insertions, 7 deletions
diff --git a/modules/convert/git_commit.go b/modules/convert/git_commit.go
index 9f43bb82f8..9905b51fe4 100644
--- a/modules/convert/git_commit.go
+++ b/modules/convert/git_commit.go
@@ -5,6 +5,7 @@
package convert
import (
+ "net/url"
"time"
"code.gitea.io/gitea/models"
@@ -126,7 +127,7 @@ func ToCommit(repo *models.Repository, commit *git.Commit, userCache map[string]
for i := 0; i < commit.ParentCount(); i++ {
sha, _ := commit.ParentID(i)
apiParents[i] = &api.CommitMeta{
- URL: repo.APIURL() + "/git/commits/" + sha.String(),
+ URL: repo.APIURL() + "/git/commits/" + url.PathEscape(sha.String()),
SHA: sha.String(),
}
}
@@ -147,13 +148,13 @@ func ToCommit(repo *models.Repository, commit *git.Commit, userCache map[string]
return &api.Commit{
CommitMeta: &api.CommitMeta{
- URL: repo.APIURL() + "/git/commits/" + commit.ID.String(),
+ URL: repo.APIURL() + "/git/commits/" + url.PathEscape(commit.ID.String()),
SHA: commit.ID.String(),
Created: commit.Committer.When,
},
- HTMLURL: repo.HTMLURL() + "/commit/" + commit.ID.String(),
+ HTMLURL: repo.HTMLURL() + "/commit/" + url.PathEscape(commit.ID.String()),
RepoCommit: &api.RepoCommit{
- URL: repo.APIURL() + "/git/commits/" + commit.ID.String(),
+ URL: repo.APIURL() + "/git/commits/" + url.PathEscape(commit.ID.String()),
Author: &api.CommitUser{
Identity: api.Identity{
Name: commit.Author.Name,
@@ -170,7 +171,7 @@ func ToCommit(repo *models.Repository, commit *git.Commit, userCache map[string]
},
Message: commit.Message(),
Tree: &api.CommitMeta{
- URL: repo.APIURL() + "/git/trees/" + commit.ID.String(),
+ URL: repo.APIURL() + "/git/trees/" + url.PathEscape(commit.ID.String()),
SHA: commit.ID.String(),
Created: commit.Committer.When,
},
diff --git a/modules/convert/issue.go b/modules/convert/issue.go
index 3974d460e0..7363cfb8fb 100644
--- a/modules/convert/issue.go
+++ b/modules/convert/issue.go
@@ -6,6 +6,7 @@ package convert
import (
"fmt"
+ "net/url"
"strings"
"code.gitea.io/gitea/models"
@@ -191,7 +192,7 @@ func ToLabel(label *models.Label, repo *models.Repository, org *models.User) *ap
}
} else { // BelongsToOrg
if org != nil {
- result.URL = fmt.Sprintf("%sapi/v1/orgs/%s/labels/%d", setting.AppURL, org.Name, label.ID)
+ result.URL = fmt.Sprintf("%sapi/v1/orgs/%s/labels/%d", setting.AppURL, url.PathEscape(org.Name), label.ID)
} else {
log.Error("ToLabel did not get org to calculate url for label with id '%d'", label.ID)
}
diff --git a/modules/convert/notification.go b/modules/convert/notification.go
index fae7be1257..5f4fef02b9 100644
--- a/modules/convert/notification.go
+++ b/modules/convert/notification.go
@@ -5,6 +5,8 @@
package convert
import (
+ "net/url"
+
"code.gitea.io/gitea/models"
api "code.gitea.io/gitea/modules/structs"
)
@@ -58,7 +60,7 @@ func ToNotificationThread(n *models.Notification) *api.NotificationThread {
}
}
case models.NotificationSourceCommit:
- url := n.Repository.HTMLURL() + "/commit/" + n.CommitID
+ url := n.Repository.HTMLURL() + "/commit/" + url.PathEscape(n.CommitID)
result.Subject = &api.NotificationSubject{
Type: api.NotifySubjectCommit,
Title: n.CommitID,