Load reviewer for comments when dismissing a review (#24281)
If a comment dismisses a review, we need to load the reviewer to show
whose review has been dismissed.
Related to:
20b6ae0e53/templates/repo/issue/view_content/comments.tmpl (L765-L770)
We don't need `.Review.Reviewer` for all comments, because
"dismissing" doesn't happen often, or we would have already received
error reports.
	
	
This commit is contained in:
		
					parent
					
						
							
								67da4c1b25
							
						
					
				
			
			
				commit
				
					
						066af372e3
					
				
			
		
					 1 changed files with 10 additions and 2 deletions
				
			
		| 
						 | 
				
			
			@ -56,7 +56,7 @@ func (comments CommentList) getLabelIDs() []int64 {
 | 
			
		|||
	return ids.Values()
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (comments CommentList) loadLabels(ctx context.Context) error { //nolint
 | 
			
		||||
func (comments CommentList) loadLabels(ctx context.Context) error {
 | 
			
		||||
	if len(comments) == 0 {
 | 
			
		||||
		return nil
 | 
			
		||||
	}
 | 
			
		||||
| 
						 | 
				
			
			@ -415,7 +415,7 @@ func (comments CommentList) getReviewIDs() []int64 {
 | 
			
		|||
	return ids.Values()
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func (comments CommentList) loadReviews(ctx context.Context) error { //nolint
 | 
			
		||||
func (comments CommentList) loadReviews(ctx context.Context) error {
 | 
			
		||||
	if len(comments) == 0 {
 | 
			
		||||
		return nil
 | 
			
		||||
	}
 | 
			
		||||
| 
						 | 
				
			
			@ -453,6 +453,14 @@ func (comments CommentList) loadReviews(ctx context.Context) error { //nolint
 | 
			
		|||
 | 
			
		||||
	for _, comment := range comments {
 | 
			
		||||
		comment.Review = reviews[comment.ReviewID]
 | 
			
		||||
 | 
			
		||||
		// If the comment dismisses a review, we need to load the reviewer to show whose review has been dismissed.
 | 
			
		||||
		// Otherwise, the reviewer is the poster of the comment, so we don't need to load it.
 | 
			
		||||
		if comment.Type == CommentTypeDismissReview {
 | 
			
		||||
			if err := comment.Review.LoadReviewer(ctx); err != nil {
 | 
			
		||||
				return err
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
	return nil
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue