|
|
|
@ -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)
|
|
|
|
|