Commit c0ed5589 authored by terry%mozilla.org's avatar terry%mozilla.org

Oops; back out last change; was checked in by mistake (and with the wrong log comment, too).

parent a1c55275
...@@ -160,4 +160,4 @@ foreach my $cc (split(/,/, $::FORM{'cc'})) { ...@@ -160,4 +160,4 @@ foreach my $cc (split(/,/, $::FORM{'cc'})) {
} }
print "Created bugzilla bug $zillaid\n"; print "Created bugzilla bug $zillaid\n";
system("./processmail $zillaid"); system("./processmail $zillaid < /dev/null > /dev/null 2> /dev/null &");
...@@ -97,11 +97,16 @@ What kind of file is this? ...@@ -97,11 +97,16 @@ What kind of file is this?
my $attachid = FetchOneColumn(); my $attachid = FetchOneColumn();
AppendComment($id, $::COOKIE{"Bugzilla_login"}, AppendComment($id, $::COOKIE{"Bugzilla_login"},
"Created an attachment (id=$attachid)\n$desc\n"); "Created an attachment (id=$attachid)\n$desc\n");
print "Your attachment has been created.";
system("./processmail $id < /dev/null > /dev/null 2> /dev/null &");
print "<TABLE BORDER=1><TD><H2>Attachment to bug $id created</H2>\n";
system("./processmail $id $::COOKIE{'Bugzilla_login'}");
print "<TD><A HREF=\"show_bug.cgi?id=$id\">Go Back to BUG# $id</A></TABLE>\n";
} }
navigation_header();
print qq{
<P>
<a href="show_bug.cgi?id=$id">Go back to bug $id</a><br>
<a href="query.cgi">Go back to the query page</a><br>
};
...@@ -226,17 +226,13 @@ SWITCH: for ($::FORM{'knob'}) { ...@@ -226,17 +226,13 @@ SWITCH: for ($::FORM{'knob'}) {
exit; exit;
} }
if ($::FORM{'dup_id'} == $::FORM{'id'}) { if ($::FORM{'dup_id'} == $::FORM{'id'}) {
print "Nice try, $::FORM{'who'}. But it doesn't really make sense to mark a\n"; print "Nice try. But it doesn't really make sense to mark a\n";
print "bug as a duplicate of itself, does it?\n"; print "bug as a duplicate of itself, does it?\n";
exit; exit;
} }
AppendComment($::FORM{'dup_id'}, $::FORM{'who'}, "*** Bug $::FORM{'id'} has been marked as a duplicate of this bug. ***"); AppendComment($::FORM{'dup_id'}, $::FORM{'who'}, "*** Bug $::FORM{'id'} has been marked as a duplicate of this bug. ***");
$::FORM{'comment'} .= "\n\n*** This bug has been marked as a duplicate of $::FORM{'dup_id'} ***"; $::FORM{'comment'} .= "\n\n*** This bug has been marked as a duplicate of $::FORM{'dup_id'} ***";
system("./processmail $::FORM{'dup_id'} < /dev/null > /dev/null 2> /dev/null &");
print "<TABLE BORDER=1><TD><H2>Notation added to bug $::FORM{'dup_id'}</H2>\n";
system("./processmail $::FORM{'dup_id'} $::FORM{'who'}");
print "<TD><A HREF=\"show_bug.cgi?id=$::FORM{'dup_id'}\">Go To BUG# $::FORM{'dup_id'}</A></TABLE>\n";
last SWITCH; last SWITCH;
}; };
# default # default
...@@ -331,19 +327,20 @@ foreach my $id (@idlist) { ...@@ -331,19 +327,20 @@ foreach my $id (@idlist) {
} }
} }
print "<TABLE BORDER=1><TD><H2>Changes to bug $id submitted</H2>\n"; print "<TABLE BORDER=1><TD><H1>Changes Submitted</H1>\n";
SendSQL("unlock tables");
system("./processmail $id $::FORM{'who'}");
print "<TD><A HREF=\"show_bug.cgi?id=$id\">Back To BUG# $id</A></TABLE>\n"; print "<TD><A HREF=\"show_bug.cgi?id=$id\">Back To BUG# $id</A></TABLE>\n";
SendSQL("unlock tables");
system("./processmail $id < /dev/null > /dev/null 2> /dev/null &");
} }
if (defined $::next_bug) { if (defined $::next_bug) {
print("<P>The next bug in your list is:\n");
$::FORM{'id'} = $::next_bug; $::FORM{'id'} = $::next_bug;
print "<HR>\n"; print "<HR>\n";
navigation_header(); navigation_header();
do "bug_form.pl"; do "bug_form.pl";
} else { } else {
navigation_header(); print "<BR><A HREF=\"query.cgi\">Back To Query Page</A>\n";
} }
...@@ -19,6 +19,9 @@ ...@@ -19,6 +19,9 @@
# #
# Contributor(s): Terry Weissman <terry@mozilla.org> # Contributor(s): Terry Weissman <terry@mozilla.org>
# To recreate the shadow database, run "processmail regenerate" .
use diagnostics; use diagnostics;
use strict; use strict;
...@@ -29,8 +32,6 @@ $| = 1; ...@@ -29,8 +32,6 @@ $| = 1;
umask(0); umask(0);
$::lockcount = 0; $::lockcount = 0;
my $regenerate = 0;
my $nametoexclude = "";
sub Lock { sub Lock {
if ($::lockcount <= 0) { if ($::lockcount <= 0) {
...@@ -181,7 +182,7 @@ sub fixaddresses { ...@@ -181,7 +182,7 @@ sub fixaddresses {
my @result; my @result;
my %seen; my %seen;
foreach my $i (@$list) { foreach my $i (@$list) {
if ($i ne $nametoexclude && $i ne "" && !defined $::nomail{$i} && !defined $seen{$i}) { if ($i ne "" && !defined $::nomail{$i} && !defined $seen{$i}) {
push @result, $i; push @result, $i;
$seen{$i} = 1; $seen{$i} = 1;
} }
...@@ -199,8 +200,40 @@ sub Log { ...@@ -199,8 +200,40 @@ sub Log {
Unlock(); Unlock();
} }
sub ProcessOneBug {
my $i = $_[0]; ConnectToDatabase();
Lock();
# foreach i [split [read_file -nonewline "okmail"] "\n"] {
# set okmail($i) 1
# }
if (open(FID, "<data/nomail")) {
while (<FID>) {
$::nomail{trim($_)} = 1;
}
close FID;
}
my $regenerate = 0;
if ($ARGV[0] eq "regenerate") {
$regenerate = 1;
shift @ARGV;
SendSQL("select bug_id from bugs order by bug_id");
my @row;
while (@row = FetchSQLData()) {
push @ARGV, $row[0];
}
print "$#ARGV bugs to be regenerated.\n";
}
foreach my $i (@ARGV) {
my $old = "shadow/$i"; my $old = "shadow/$i";
my $new = "shadow/$i.tmp.$$"; my $new = "shadow/$i.tmp.$$";
my $diffs = "shadow/$i.diffs.$$"; my $diffs = "shadow/$i.diffs.$$";
...@@ -224,7 +257,7 @@ sub ProcessOneBug { ...@@ -224,7 +257,7 @@ sub ProcessOneBug {
my $tolist = fixaddresses([$::bug{'assigned_to'}, $::bug{'reporter'}, my $tolist = fixaddresses([$::bug{'assigned_to'}, $::bug{'reporter'},
$::bug{'qa_contact'}]); $::bug{'qa_contact'}]);
my $cclist = fixaddresses($::bug{'cclist'}); my $cclist = fixaddresses($::bug{'cclist'});
my $logstr = "Bug $i $verb"; my $logstr = "Bug $i changed";
if ($tolist ne "" || $cclist ne "") { if ($tolist ne "" || $cclist ne "") {
my %substs; my %substs;
...@@ -242,12 +275,11 @@ sub ProcessOneBug { ...@@ -242,12 +275,11 @@ sub ProcessOneBug {
my $msg = PerformSubsts(Param("changedmail"), \%substs); my $msg = PerformSubsts(Param("changedmail"), \%substs);
if (!$regenerate) { if (!$regenerate) {
open(SENDMAIL, "|/usr/sbin/sendmail -t") || open(SENDMAIL, "|/usr/lib/sendmail -t") ||
die "Can't open sendmail"; die "Can't open sendmail";
print SENDMAIL $msg; print SENDMAIL $msg;
close SENDMAIL; close SENDMAIL;
$logstr = "$logstr; mail sent to $tolist, $cclist"; $logstr = "$logstr; mail sent to $tolist $cclist";
print "<B>Email sent to:</B> $tolist $cclist <B>Excluding:</B> $nametoexclude\n";
} }
} }
unlink($diffs); unlink($diffs);
...@@ -260,43 +292,4 @@ sub ProcessOneBug { ...@@ -260,43 +292,4 @@ sub ProcessOneBug {
} }
} }
# Code starts here
ConnectToDatabase();
Lock();
if (open(FID, "<data/nomail")) {
while (<FID>) {
$::nomail{trim($_)} = 1;
}
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;
shift @ARGV;
SendSQL("select bug_id from bugs order by bug_id");
my @regenerate_list;
while (my @row = FetchSQLData()) {
push @regenerate_list, $row[0];
}
foreach my $i (@regenerate_list) {
ProcessOneBug($i);
}
print("\n");
exit;
}
if ($#ARGV == 1) {
$nametoexclude = $ARGV[1];
}
ProcessOneBug($ARGV[0]);
exit; exit;
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment