summaryrefslogtreecommitdiffstats
path: root/Bugzilla
diff options
context:
space:
mode:
Diffstat (limited to 'Bugzilla')
-rw-r--r--Bugzilla/Flag.pm25
1 files changed, 14 insertions, 11 deletions
diff --git a/Bugzilla/Flag.pm b/Bugzilla/Flag.pm
index b4c1bc595..7b074887a 100644
--- a/Bugzilla/Flag.pm
+++ b/Bugzilla/Flag.pm
@@ -977,7 +977,6 @@ sub notify {
my ($flag, $template_file) = @_;
my $template = Bugzilla->template;
- my $vars = {};
# There is nobody to notify.
return unless ($flag->{'addressee'} || $flag->{'type'}->{'cc_list'});
@@ -1007,17 +1006,21 @@ sub notify {
# If there is nobody left to notify, return.
return unless ($flag->{'addressee'} || $flag->{'type'}->{'cc_list'});
- $vars->{'flag'} = $flag;
-
- my $message;
- my $rv =
- $template->process($template_file, $vars, \$message);
- if (!$rv) {
- Bugzilla->cgi->header();
- ThrowTemplateError($template->error());
- }
+ # Process and send notification for each recipient
+ foreach my $to ($flag->{'addressee'} ? $flag->{'addressee'}->email : '',
+ split(/[, ]+/, $flag->{'type'}->{'cc_list'}))
+ {
+ next unless $to;
+ my $vars = { 'flag' => $flag, 'to' => $to };
+ my $message;
+ my $rv = $template->process($template_file, $vars, \$message);
+ if (!$rv) {
+ Bugzilla->cgi->header();
+ ThrowTemplateError($template->error());
+ }
- Bugzilla::BugMail::MessageToMTA($message);
+ Bugzilla::BugMail::MessageToMTA($message);
+ }
}
# Cancel all request flags from the attachment being obsoleted.