summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorguillep2k <18600385+guillep2k@users.noreply.github.com>2019-11-13 21:38:12 -0300
committerzeripath <art27@cantab.net>2019-11-14 00:38:12 +0000
commit023ae3c48cded84dee6bdcbcf7bba8cc92a4a408 (patch)
treeb9cc73815a1657d1a15be1a1358df105a4f90127
parent3227a11f71200c6018b8af584d34fd85261de264 (diff)
downloadgitea-023ae3c48cded84dee6bdcbcf7bba8cc92a4a408.tar.gz
gitea-023ae3c48cded84dee6bdcbcf7bba8cc92a4a408.zip
Hotfix for review actions and notifications (#8965)
-rw-r--r--models/issue_comment.go21
-rw-r--r--models/review.go1
-rw-r--r--routers/repo/pull_review.go10
3 files changed, 23 insertions, 9 deletions
diff --git a/models/issue_comment.go b/models/issue_comment.go
index 2d5f2839bf..f3921b80c5 100644
--- a/models/issue_comment.go
+++ b/models/issue_comment.go
@@ -538,6 +538,10 @@ func sendCreateCommentAction(e *xorm.Session, opts *CreateCommentOptions, commen
switch opts.Type {
case CommentTypeCode:
if comment.ReviewID != 0 {
+ // Hotfix for 1.10.0 as the Review object has not yet been committed in the other session
+ if opts.Review != nil {
+ comment.Review = opts.Review
+ }
if comment.Review == nil {
if err := comment.loadReview(e); err != nil {
return err
@@ -596,6 +600,12 @@ func sendCreateCommentAction(e *xorm.Session, opts *CreateCommentOptions, commen
if err = opts.Issue.updateClosedNum(e); err != nil {
return err
}
+ case CommentTypeReview:
+ // Hotfix for 1.10.0; make sure a dashboard entry is created
+ if opts.Content == "" {
+ return nil
+ }
+ act.OpType = ActionCommentIssue
}
// update the issue's updated_unix column
if err = updateIssueCols(e, opts.Issue, "updated_unix"); err != nil {
@@ -751,11 +761,12 @@ func createIssueDependencyComment(e *xorm.Session, doer *User, issue *Issue, dep
// CreateCommentOptions defines options for creating comment
type CreateCommentOptions struct {
- Type CommentType
- Doer *User
- Repo *Repository
- Issue *Issue
- Label *Label
+ Type CommentType
+ Doer *User
+ Repo *Repository
+ Issue *Issue
+ Label *Label
+ Review *Review
DependentIssueID int64
OldMilestoneID int64
diff --git a/models/review.go b/models/review.go
index 454d16ee88..5c1449c18a 100644
--- a/models/review.go
+++ b/models/review.go
@@ -135,6 +135,7 @@ func (r *Review) publish(e *xorm.Engine) error {
Repo: review.Issue.Repo,
Type: comm.Type,
Content: comm.Content,
+ Review: r,
}, comm); err != nil {
log.Warn("sendCreateCommentAction: %v", err)
}
diff --git a/routers/repo/pull_review.go b/routers/repo/pull_review.go
index 5eb0dfe9a7..4c17537071 100644
--- a/routers/repo/pull_review.go
+++ b/routers/repo/pull_review.go
@@ -174,6 +174,12 @@ func SubmitReview(ctx *context.Context, form auth.SubmitReviewForm) {
return
}
}
+
+ // Hotfix 1.10.0: make sure the review exists before creating the head comment
+ if err = review.Publish(); err != nil {
+ ctx.ServerError("Publish", err)
+ return
+ }
comm, err := models.CreateComment(&models.CreateCommentOptions{
Type: models.CommentTypeReview,
Doer: ctx.User,
@@ -186,10 +192,6 @@ func SubmitReview(ctx *context.Context, form auth.SubmitReviewForm) {
ctx.ServerError("CreateComment", err)
return
}
- if err = review.Publish(); err != nil {
- ctx.ServerError("Publish", err)
- return
- }
pr, err := issue.GetPullRequest()
if err != nil {