aboutsummaryrefslogtreecommitdiffstats
path: root/models
diff options
context:
space:
mode:
authorUnknwon <u@gogs.io>2015-09-25 20:35:56 -0400
committerUnknwon <u@gogs.io>2015-09-25 20:35:56 -0400
commit6dfee30bf0a6faef3211eb9fd1587c4fd8e87eef (patch)
tree0200056e4ad2bc5f7de3840429c17265ff0b0ce7 /models
parent21e13cb51e73471d186b963e26404f89abd81fce (diff)
downloadgitea-6dfee30bf0a6faef3211eb9fd1587c4fd8e87eef.tar.gz
gitea-6dfee30bf0a6faef3211eb9fd1587c4fd8e87eef.zip
#1602 Wrong commit order on issue page when pushing multiple commits
Diffstat (limited to 'models')
-rw-r--r--models/action.go10
-rw-r--r--models/repo.go12
-rw-r--r--models/update.go10
3 files changed, 15 insertions, 17 deletions
diff --git a/models/action.go b/models/action.go
index 2e158cbf16..07e4da8f95 100644
--- a/models/action.go
+++ b/models/action.go
@@ -189,7 +189,11 @@ func issueIndexTrimRight(c rune) bool {
// updateIssuesCommit checks if issues are manipulated by commit message.
func updateIssuesCommit(u *User, repo *Repository, repoUserName, repoName string, commits []*base.PushCommit) error {
- for _, c := range commits {
+ // Commits are appended in the reverse order.
+ for i := len(commits) - 1; i >= 0; i-- {
+ c := commits[i]
+ fmt.Println(c)
+
refMarked := make(map[int64]bool)
for _, ref := range IssueReferenceKeywordsPat.FindAllString(c.Message, -1) {
ref = ref[strings.IndexByte(ref, byte(' '))+1:]
@@ -350,6 +354,10 @@ func CommitRepoAction(
}
}
+ if len(commit.Commits) > setting.FeedMaxCommitNum {
+ commit.Commits = commit.Commits[:setting.FeedMaxCommitNum]
+ }
+
bs, err := json.Marshal(commit)
if err != nil {
return fmt.Errorf("Marshal: %v", err)
diff --git a/models/repo.go b/models/repo.go
index 34de3d14db..f3a32d6877 100644
--- a/models/repo.go
+++ b/models/repo.go
@@ -777,19 +777,15 @@ func CountPublicRepositories() int64 {
}
// RepositoriesWithUsers returns number of repos in given page.
-func RepositoriesWithUsers(page, pageSize int) ([]*Repository, error) {
+func RepositoriesWithUsers(page, pageSize int) (_ []*Repository, err error) {
repos := make([]*Repository, 0, pageSize)
- if err := x.Limit(pageSize, (page-1)*pageSize).Asc("id").Find(&repos); err != nil {
+ if err = x.Limit(pageSize, (page-1)*pageSize).Asc("id").Find(&repos); err != nil {
return nil, err
}
- for _, repo := range repos {
- repo.Owner = &User{Id: repo.OwnerID}
- has, err := x.Get(repo.Owner)
- if err != nil {
+ for i := range repos {
+ if err = repos[i].GetOwner(); err != nil {
return nil, err
- } else if !has {
- return nil, ErrUserNotExist{repo.OwnerID, ""}
}
}
diff --git a/models/update.go b/models/update.go
index f381d6fd07..2fd00ad7e8 100644
--- a/models/update.go
+++ b/models/update.go
@@ -23,10 +23,6 @@ type UpdateTask struct {
NewCommitId string
}
-const (
- MAX_COMMITS int = 5
-)
-
func AddUpdateTask(task *UpdateTask) error {
_, err := x.Insert(task)
return err
@@ -147,10 +143,8 @@ func Update(refName, oldCommitId, newCommitId, userName, repoUserName, repoName
&base.PushCommit{commit.Id.String(),
commit.Message(),
commit.Author.Email,
- commit.Author.Name})
- if len(commits) >= MAX_COMMITS {
- break
- }
+ commit.Author.Name,
+ })
}
if err = CommitRepoAction(userId, ru.Id, userName, actEmail,