]> source.dussan.org Git - gitea.git/commitdiff
Fix negative issue count (#3207)
authorRobin Lambertz <robinlambertz+dev@gmail.com>
Sun, 26 Jun 2016 17:53:30 +0000 (19:53 +0200)
committer无闻 <u@gogs.io>
Sun, 26 Jun 2016 17:53:30 +0000 (01:53 +0800)
models/repo.go

index 6cc16eca15655cf185f1a50155fe51715d0d3064..5d6b66d0469717935d3669bb406304cac8c814cc 100644 (file)
@@ -1832,14 +1832,14 @@ func CheckRepoStats() {
 
        // ***** START: Repository.NumClosedIssues *****
        desc := "repository count 'num_closed_issues'"
-       results, err := x.Query("SELECT repo.id FROM `repository` repo WHERE repo.num_closed_issues!=(SELECT COUNT(*) FROM `issue` WHERE repo_id=repo.id AND is_closed=?)", true)
+       results, err := x.Query("SELECT repo.id FROM `repository` repo WHERE repo.num_closed_issues!=(SELECT COUNT(*) FROM `issue` WHERE repo_id=repo.id AND is_closed=? AND is_pull=?)", true, false)
        if err != nil {
                log.Error(4, "Select %s: %v", desc, err)
        } else {
                for _, result := range results {
                        id := com.StrTo(result["id"]).MustInt64()
                        log.Trace("Updating %s: %d", desc, id)
-                       _, err = x.Exec("UPDATE `repository` SET num_closed_issues=(SELECT COUNT(*) FROM `issue` WHERE repo_id=? AND is_closed=?) WHERE id=?", id, true, id)
+                       _, err = x.Exec("UPDATE `repository` SET num_closed_issues=(SELECT COUNT(*) FROM `issue` WHERE repo_id=? AND is_closed=? AND is_pull=?) WHERE id=?", id, true, false, id)
                        if err != nil {
                                log.Error(4, "Update %s[%d]: %v", desc, id, err)
                        }