diff --git a/mozilla/webtools/bugzilla/Bugzilla/BugMail.pm b/mozilla/webtools/bugzilla/Bugzilla/BugMail.pm index bae1b27773b..e78be86ec0f 100644 --- a/mozilla/webtools/bugzilla/Bugzilla/BugMail.pm +++ b/mozilla/webtools/bugzilla/Bugzilla/BugMail.pm @@ -418,7 +418,8 @@ sub ProcessOneBug { $relationship, $diffs, $newcomments, - $changer)) + $changer, + !$start)) { $rels_which_want{$relationship} = $recipients{$user_id}->{$relationship}; diff --git a/mozilla/webtools/bugzilla/Bugzilla/User.pm b/mozilla/webtools/bugzilla/Bugzilla/User.pm index 961b2ca0b30..09fd2f9ce35 100644 --- a/mozilla/webtools/bugzilla/Bugzilla/User.pm +++ b/mozilla/webtools/bugzilla/Bugzilla/User.pm @@ -1183,7 +1183,7 @@ our %names_to_events = ( # Note: the "+" signs before the constants suppress bareword quoting. sub wants_bug_mail { my $self = shift; - my ($bug_id, $relationship, $fieldDiffs, $commentField, $changer) = @_; + my ($bug_id, $relationship, $fieldDiffs, $commentField, $changer, $bug_is_new) = @_; # Don't send any mail, ever, if account is disabled # XXX Temporary Compatibility Change 1 of 2: @@ -1228,6 +1228,16 @@ sub wants_bug_mail { } } + # You role is new if the bug itself is. + # Only makes sense for the assignee, QA contact and the CC list. + if ($bug_is_new + && ($relationship == REL_ASSIGNEE + || $relationship == REL_QA + || $relationship == REL_CC)) + { + $events{+EVT_ADDED_REMOVED} = 1; + } + if ($commentField =~ /Created an attachment \(/) { $events{+EVT_ATTACHMENT} = 1; }