diff --git a/models/issue.go b/models/issue.go index 1c6b930d2..797636605 100644 --- a/models/issue.go +++ b/models/issue.go @@ -440,7 +440,7 @@ func (issue *Issue) HashTag() string { // IsPoster returns true if given user by ID is the poster. func (issue *Issue) IsPoster(uid int64) bool { - return issue.PosterID == uid + return issue.OriginalAuthorID == 0 && issue.PosterID == uid } func (issue *Issue) hasLabel(e Engine, labelID int64) bool { diff --git a/routers/repo/pull_review.go b/routers/repo/pull_review.go index 558473eb0..9fcb02cd4 100644 --- a/routers/repo/pull_review.go +++ b/routers/repo/pull_review.go @@ -83,7 +83,7 @@ func SubmitReview(ctx *context.Context, form auth.SubmitReviewForm) { // can not approve/reject your own PR case models.ReviewTypeApprove, models.ReviewTypeReject: - if issue.Poster.ID == ctx.User.ID { + if issue.IsPoster(ctx.User.ID) { var translated string if reviewType == models.ReviewTypeApprove { translated = ctx.Tr("repo.issues.review.self.approval")