X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=scripts%2Fservice;h=7e4c2054bcf618b4ec4eb204dbc01d300183d203;hb=210f625e6e6b4cbe1065f35d9eb0bdc73563969c;hp=fe911442d50b6fb4a3f6683b3db63911000b6923;hpb=907fa43dbb9e516daba3ceded78dbafab29d09e5;p=debbugs.git diff --git a/scripts/service b/scripts/service index fe91144..7e4c205 100755 --- a/scripts/service +++ b/scripts/service @@ -7,7 +7,6 @@ use warnings; use strict; -use locale; use POSIX qw(strftime locale_h); setlocale(LC_TIME, "C"); @@ -40,7 +39,7 @@ use Debbugs::Text qw(:templates); use Scalar::Util qw(looks_like_number); -use List::Util qw(first); +use List::AllUtils qw(first uniqnum); use Mail::RFC822::Address; use Encode qw(decode encode); @@ -285,7 +284,7 @@ for ($procline=0; $procline<=$#bodylines; $procline++) { } elsif (m/^subscribe/i) { print {$transcript} <= 5) { print {$transcript} "Too many unknown commands, stopping here.\n\n"; @@ -508,7 +508,7 @@ if (!defined $header{'subject'} || $header{'subject'} eq "") { } # Error text here advertises how many errors there were -my $error_text = $errors > 0 ? " (with $errors errors)":''; +my $error_text = $errors > 0 ? " (with $errors error" . ($errors > 1 ? "s" : "") . ")" : ""; my @common_headers; push @common_headers, 'X-Loop',$gMaintainerEmail; @@ -518,7 +518,7 @@ eval{ $temp_transcript = decode("utf8",$temp_transcript,Encode::FB_CROAK); }; my $reply = - create_mime_message([From => "$gMaintainerEmail ($gProject $gBug Tracking System)", + create_mime_message([From => qq("$gProject $gBug Tracking System" <$gMaintainerEmail>), To => $replyto, @maintccs ? (Cc => join(', ',@maintccs)):(), Subject => "Processed${error_text}: $header{subject}", @@ -573,20 +573,15 @@ sub fill_template{ my $variables = {config => \%config, defined($ref)?(ref => $ref):(), defined($data)?(data => $data):(), - refs => [map {exists $clonebugs{$_}?$clonebugs{$_}:$_} keys %bug_affected], + refs => [sort + uniqnum(defined($ref)?($ref):(), + map {exists $clonebugs{$_}?$clonebugs{$_}:$_} + keys %bug_affected)], %{$extra_var}, }; - my $hole_var = {'&bugurl' => - sub{"$_[0]: ". - 'http://'.$config{cgi_domain}.'/'. - Debbugs::CGI::bug_links(bug=>$_[0], - links_only => 1, - ); - } - }; return fill_in_template(template => $template, variables => $variables, - hole_var => $hole_var, + output_type => 'text', ); } @@ -884,7 +879,7 @@ sub sendtxthelpraw { close(D); print {$transcript} "Sending $description in separate message.\n"; &sendmailmessage(< To: $replyto Subject: $gProject $gBug help: $description References: $header{'message-id'} @@ -900,7 +895,7 @@ END sub sendlynxdocraw { my ($relpath,$description) = @_; $doc=''; - open(L,"lynx -nolist -dump http://$gCGIDomain/\Q$relpath\E 2>&1 |") || die "fork for lynx: $!"; + open(L,"lynx -nolist -dump $gCGIDomain/\Q$relpath\E 2>&1 |") || die "fork for lynx: $!"; while() { $doc.=$_; } $!=0; close(L); if ($? == 255 && $doc =~ m/^\n*lynx: Can\'t access start file/) { @@ -912,7 +907,7 @@ sub sendlynxdocraw { } else { print {$transcript} "Sending $description.\n"; &sendmailmessage(< To: $replyto Subject: $gProject $gBugs information: $description References: $header{'message-id'} @@ -949,7 +944,7 @@ sub sendinfo { } print {$transcript} "Sending $description.\n"; &sendmailmessage(< To: $replyto Subject: $gProject $gBugs information: $description References: $header{'message-id'}