diff options
author | Eric Wong <e@80x24.org> | 2020-12-09 23:33:00 +0000 |
---|---|---|
committer | Eric Wong <e@80x24.org> | 2020-12-10 06:39:29 +0000 |
commit | db7c206a4e2c71d08dd286d6dfa92431976e9693 (patch) | |
tree | a9f044f2d7e77afd8cd5ab55bfe429fde7c371f9 /lib/PublicInbox/Mbox.pm | |
parent | 443ab96a3b329556e26a57b02c7383d5faf536b3 (diff) | |
download | public-inbox-db7c206a4e2c71d08dd286d6dfa92431976e9693.tar.gz |
www+nntp: deal with lack of addresses for ->ALL
Since extindex is an amalgamation of several inboxes, discerning an appropriate address for List-Post: would be expensive and most likely unnecessary. Some legacy/historical inboxes may have no active address, either, so don't attempt to set the List-Post header if no addresses are configured.
Diffstat (limited to 'lib/PublicInbox/Mbox.pm')
-rw-r--r-- | lib/PublicInbox/Mbox.pm | 13 |
1 files changed, 5 insertions, 8 deletions
diff --git a/lib/PublicInbox/Mbox.pm b/lib/PublicInbox/Mbox.pm index 64de8c72..c88350c9 100644 --- a/lib/PublicInbox/Mbox.pm +++ b/lib/PublicInbox/Mbox.pm @@ -106,7 +106,6 @@ sub msg_hdr ($$;$) { my @append = ( 'Archived-At', "<$base$mid/>", 'List-Archive', "<$base>", - 'List-Post', "<mailto:$ibx->{-primary_address}>", ); my $crlf = $header_obj->crlf; my $buf = $header_obj->as_string; @@ -118,13 +117,11 @@ sub msg_hdr ($$;$) { my $k = $append[$i]; my $v = $append[$i + 1]; my @v = $header_obj->header_raw($k); - foreach (@v) { - if ($v eq $_) { - $v = undef; - last; - } - } - $buf .= "$k: $v$crlf" if defined $v; + $buf .= "$k: $v$crlf" if !grep(/\A\Q$v\E\z/, @v); + } + my $post_addr = $ibx->{-primary_address}; + if ($post_addr && $header_obj->header_raw('List-Post')) { + $buf .= "List-Post: <mailto:$post_addr>$crlf"; } $buf .= $crlf; } |