X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=scripts%2Fprocess;h=c663dfd69782a59262095b36424ff5cd07cf6901;hb=c05083e5394af9c9cad1cfe84e188b9f82e2d2b4;hp=75c487a1a05a534c5aa9d046e28709d4ab85b1e8;hpb=907fa43dbb9e516daba3ceded78dbafab29d09e5;p=debbugs.git diff --git a/scripts/process b/scripts/process index 75c487a..c663dfd 100755 --- a/scripts/process +++ b/scripts/process @@ -275,8 +275,18 @@ if (!defined($header{'subject'})) my $ref=-1; # remove Re: from the subject line $subject =~ s/^Re:\s*//i; -# remove remaining mailing list name markers from the subject line -$subject =~ s/^\[.*\]\s*//i; +# remove remaining mailing list name markers from the subject line if +# this appears to be a message that has traversed a mailing list +if (exists $header{'list-id'} or exists $header{'list-subscribe'} or + (exists $header{'precedence'} and defined $header{'precedence'} and + $header{'precedence'} eq 'bulk') or + exists $header{'mailing-list'} or exists $header{'list-processor-version'} + ){ + # if a mailing list didn't match any of the above, it's probably + # so horribly configured that we wouldn't be able to figure it out + # anyway. + $subject =~ s/^\[.*\]\s*//i; +} $_= $subject."\n"; if (not defined $tryref and m/^Bug ?\#(\d+)\D/i) { $tryref = $1 if $1 > 0; @@ -450,15 +460,13 @@ if ($codeletter eq 'D' || $codeletter eq 'F') # Add bug mailing list to $generalbcc as appropriate # This array is used to specify bcc in the cases where we're using create_mime_message. my @generalbcc = @generalcc; - my $generalbcc = $generalcc; if (defined $config{subscription_domain} and length $config{subscription_domain}) { - my @generalbcc = (@generalbcc, @addsrcaddrs); - my $generalbcc = join(', ', $generalbcc, @addsrcaddrs); + @generalbcc = (@generalbcc, @addsrcaddrs); } if (defined $config{bug_subscription_domain} and length $config{bug_subscription_domain}) { - my @generalbcc = (@generalbcc, "bugs=$ref\@$config{bug_subscription_domain}"); - my $generalbcc = join(', ', $generalbcc, "bugs=$ref\@$config{bug_subscription_domain}"); + @generalbcc = (@generalbcc, "bugs=$ref\@$config{bug_subscription_domain}"); } + my $generalbcc = join(', ', @generalbcc); $generalbcc =~ s/\s+\n\s+/ /g; $generalbcc =~ s/^\s+/ /; $generalbcc =~ s/\s+$//; if (length $generalbcc) {$generalbcc = "Bcc: $generalbcc\n"};