|
|
@ -62,7 +62,7 @@ func mailIssueCommentToParticipants(ctx *mailCommentContext, mentions []int64) e |
|
|
|
unfiltered = append(unfiltered, ids...) |
|
|
|
|
|
|
|
// =========== Issue watchers ===========
|
|
|
|
ids, err = models.GetIssueWatchersIDs(ctx.Issue.ID) |
|
|
|
ids, err = models.GetIssueWatchersIDs(ctx.Issue.ID, true) |
|
|
|
if err != nil { |
|
|
|
return fmt.Errorf("GetIssueWatchersIDs(%d): %v", ctx.Issue.ID, err) |
|
|
|
} |
|
|
@ -80,6 +80,14 @@ func mailIssueCommentToParticipants(ctx *mailCommentContext, mentions []int64) e |
|
|
|
|
|
|
|
// Avoid mailing the doer
|
|
|
|
visited[ctx.Doer.ID] = true |
|
|
|
// Avoid mailing explicit unwatched
|
|
|
|
ids, err = models.GetIssueWatchersIDs(ctx.Issue.ID, false) |
|
|
|
if err != nil { |
|
|
|
return fmt.Errorf("GetIssueWatchersIDs(%d): %v", ctx.Issue.ID, err) |
|
|
|
} |
|
|
|
for _, i := range ids { |
|
|
|
visited[i] = true |
|
|
|
} |
|
|
|
|
|
|
|
if err = mailIssueCommentBatch(ctx, unfiltered, visited, false); err != nil { |
|
|
|
return fmt.Errorf("mailIssueCommentBatch(): %v", err) |
|
|
|