Skip to content

Commit ba0e7be

Browse files
committed
Update num commits if commits count is less than zero
1 parent 6d5a850 commit ba0e7be

File tree

2 files changed

+17
-0
lines changed

2 files changed

+17
-0
lines changed

models/repo/release.go

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -161,6 +161,11 @@ func UpdateRelease(ctx context.Context, rel *Release) error {
161161
return err
162162
}
163163

164+
func UpdateReleaseNumCommits(ctx context.Context, rel *Release) error {
165+
_, err := db.GetEngine(ctx).ID(rel.ID).Cols("num_commits").Update(rel)
166+
return err
167+
}
168+
164169
// AddReleaseAttachments adds a release attachments
165170
func AddReleaseAttachments(ctx context.Context, releaseID int64, attachmentUUIDs []string) (err error) {
166171
// Check attachments

services/context/repo.go

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -938,6 +938,18 @@ func RepoRefByType(detectRefType git.RefType) func(*Context) {
938938
ctx.ServerError("GetRelease", err)
939939
return
940940
}
941+
// for mirror tags, the number of commist may not be set
942+
if rel.NumCommits <= 0 {
943+
rel.NumCommits, err = ctx.Repo.GetCommitsCount()
944+
if err != nil {
945+
ctx.ServerError("GetCommitsCount", err)
946+
return
947+
}
948+
if err := repo_model.UpdateReleaseNumCommits(ctx, rel); err != nil {
949+
ctx.ServerError("UpdateReleaseNumCommits", err)
950+
return
951+
}
952+
}
941953
ctx.Repo.CommitsCount = rel.NumCommits
942954
} else {
943955
ctx.Repo.CommitsCount, err = ctx.Repo.GetCommitsCount()

0 commit comments

Comments
 (0)