Skip to content

Commit 8198531

Browse files
Handle reviewers that has been deleted
1 parent b1537d4 commit 8198531

File tree

1 file changed

+10
-3
lines changed

1 file changed

+10
-3
lines changed

models/review.go

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -333,6 +333,8 @@ func SubmitReview(doer *User, issue *Issue, reviewType ReviewType, content strin
333333

334334
// GetReviewersByIssueID gets the latest review of each reviewer for a pull request
335335
func GetReviewersByIssueID(issueID int64) (reviews []*Review, err error) {
336+
reviewsUnfiltered := []*Review{}
337+
336338
sess := x.NewSession()
337339
defer sess.Close()
338340
if err := sess.Begin(); err != nil {
@@ -341,13 +343,18 @@ func GetReviewersByIssueID(issueID int64) (reviews []*Review, err error) {
341343

342344
if err := sess.SQL("SELECT * FROM review WHERE id IN (SELECT max(id) as id FROM review WHERE issue_id = ? AND type in (?, ?) GROUP BY issue_id, reviewer_id) ORDER BY review.updated_unix ASC",
343345
issueID, ReviewTypeApprove, ReviewTypeReject).
344-
Find(&reviews); err != nil {
346+
Find(&reviewsUnfiltered); err != nil {
345347
return nil, err
346348
}
347349

348-
for _, review := range reviews {
350+
// Load reviewer and skip if user is deleted
351+
for _, review := range reviewsUnfiltered {
349352
if err := review.loadReviewer(sess); err != nil {
350-
return nil, err
353+
if !IsErrUserNotExist(err) {
354+
return nil, err
355+
}
356+
} else {
357+
reviews = append(reviews, review)
351358
}
352359
}
353360

0 commit comments

Comments
 (0)