]> git.ipfire.org Git - thirdparty/bugzilla.git/commitdiff
Send one last email notification to people when a bug gets reassigned
authorterry%mozilla.org <>
Fri, 14 Jan 2000 06:23:23 +0000 (06:23 +0000)
committerterry%mozilla.org <>
Fri, 14 Jan 2000 06:23:23 +0000 (06:23 +0000)
away from them or they get removed from the CC list.

process_bug.cgi
processmail

index 36bfe71bee6630c0accdb2b11a4bc357e37d002e..c1c7e63a49ab45fd9957a4ecef8e6d3942a918fd 100755 (executable)
@@ -678,6 +678,9 @@ The changes made were:
             if ($col eq 'assigned_to' || $col eq 'qa_contact') {
                 $old = DBID_to_name($old) if $old != 0;
                 $new = DBID_to_name($new) if $new != 0;
+                $origcclist .= ",$old"; # make sure to send mail to people
+                                        # if they are going to no longer get
+                                        # updates about this bug.
             }
             if ($col eq 'product') {
                 RemoveVotes($id,
@@ -694,7 +697,7 @@ The changes made were:
     
     print "<TABLE BORDER=1><TD><H2>Changes to bug $id submitted</H2>\n";
     SendSQL("unlock tables");
-    system("./processmail $id $::FORM{'who'}");
+    system("./processmail", "-forcecc", $origcclist, $id, $::FORM{'who'});
     print "<TD><A HREF=\"show_bug.cgi?id=$id\">Back To BUG# $id</A></TABLE>\n";
 
     foreach my $k (keys(%dependencychanged)) {
index eedfb033949d4504f06f8de4b2ce9680260c37f3..8e0b7c29fde758bfd7f15ec9eaf7f2f027b905e2 100755 (executable)
@@ -36,6 +36,8 @@ $::lockcount = 0;
 my $regenerate = 0;
 my $nametoexclude = "";
 
+my @forcecc;
+
 sub Lock {
     if ($::lockcount <= 0) {
         $::lockcount = 0;
@@ -305,6 +307,7 @@ sub ProcessOneBug {
         foreach my $v (split(/,/, "$::bug{'cclist'},$::bug{'voterlist'}")) {
             push @combinedcc, $v;
         }
+        push (@combinedcc, (@forcecc));
         my $cclist = fixaddresses("cc", \@combinedcc);
         my $logstr = "Bug $i $verb";
         if ($tolist ne "" || $cclist ne "") {
@@ -360,11 +363,6 @@ if (open(FID, "<data/nomail")) {
     close FID;
 }
 
-if (($#ARGV < 0) || ($#ARGV > 1)) {
-    print "Usage error: processmail {bugid} {nametoexclude}\nOr: processmail regenerate\n";
-    exit;
-}
-
 # To recreate the shadow database,  run "processmail regenerate" .
 if ($ARGV[0] eq "regenerate") {
     $regenerate = 1;
@@ -383,6 +381,18 @@ if ($ARGV[0] eq "regenerate") {
     exit;
 }
 
+if ($ARGV[0] eq "-forcecc") {
+    shift(@ARGV);
+    foreach my $i (split(/,/, shift(@ARGV))) {
+        push(@forcecc, trim($i));
+    }
+}
+
+if (($#ARGV < 0) || ($#ARGV > 1)) {
+    print "Usage error: processmail {bugid} {nametoexclude}\nOr: processmail regenerate\n";
+    exit;
+}
+
 if ($#ARGV == 1) {
     $nametoexclude = lc($ARGV[1]);
 }