diff --git a/services/issue/comments.go b/services/issue/comments.go index dedef6cc87..8da16d5291 100644 --- a/services/issue/comments.go +++ b/services/issue/comments.go @@ -118,6 +118,9 @@ func UpdateComment(ctx context.Context, c *issues_model.Comment, contentVersion // DeleteComment deletes the comment func DeleteComment(ctx context.Context, doer *user_model.User, comment *issues_model.Comment) error { + reviewID := comment.ReviewID + reviewType := comment.Review.Type + err := db.WithTx(ctx, func(ctx context.Context) error { return issues_model.DeleteComment(ctx, comment) }) @@ -132,5 +135,17 @@ func DeleteComment(ctx context.Context, doer *user_model.User, comment *issues_m notify_service.DeleteComment(ctx, doer, comment) } + if reviewType == issues_model.ReviewTypePending { + found, err := db.GetEngine(ctx).Table("comment").Where("review_id = ?", reviewID).Exist() + if found { + _, err := db.GetEngine(ctx).Table("comment").Where("reviewID = ?", reviewID).Delete() + if err != nil { + return err + } + } else if err != nil { + return err + } + } + return nil }