diff options
author | Eric Wong <e@80x24.org> | 2016-08-14 10:21:10 +0000 |
---|---|---|
committer | Eric Wong <e@80x24.org> | 2016-08-14 11:04:46 +0000 |
commit | 5f83592e6ad3a6b7d1824e339a083db1e391145d (patch) | |
tree | 9bbcbeeeca9e4a92e90309e8520c43944480db55 /lib | |
parent | 9d1e5fadd7d18f4c96ab0509d673040e34225a04 (diff) | |
download | public-inbox-5f83592e6ad3a6b7d1824e339a083db1e391145d.tar.gz |
Ensure we usually strip one level of '<>' from Message-IDs, since our internal SQLite, Xapian, and SHA-1 storage all assume that. Realistically, we screw up if somebody has '<<' or '>>', but those are screwed up mail clients and we can deal with it another time. Currently, this means some messages with '>>' in References or Message-Id are not handled correctly, yet, but we match the behavior of Mail::Thread in keeping the extra '>'.
Diffstat (limited to 'lib')
-rw-r--r-- | lib/PublicInbox/Feed.pm | 3 | ||||
-rw-r--r-- | lib/PublicInbox/Hval.pm | 1 | ||||
-rw-r--r-- | lib/PublicInbox/View.pm | 2 |
3 files changed, 2 insertions, 4 deletions
diff --git a/lib/PublicInbox/Feed.pm b/lib/PublicInbox/Feed.pm index 232a91c0..25fec10a 100644 --- a/lib/PublicInbox/Feed.pm +++ b/lib/PublicInbox/Feed.pm @@ -266,8 +266,7 @@ sub feed_entry { my $midurl = $feed_opts->{midurl}; my $header_obj = $mime->header_obj; - my $mid = $header_obj->header_raw('Message-ID'); - defined $mid or return; + my $mid = mid_clean($header_obj->header_raw('Message-ID')); $mid = PublicInbox::Hval->new_msgid($mid); my $href = $midurl . $mid->{href}. '/'; diff --git a/lib/PublicInbox/Hval.pm b/lib/PublicInbox/Hval.pm index 72496065..77acecda 100644 --- a/lib/PublicInbox/Hval.pm +++ b/lib/PublicInbox/Hval.pm @@ -31,7 +31,6 @@ sub new { sub new_msgid { my ($class, $msgid) = @_; - $msgid = mid_clean($msgid); $class->new($msgid, mid_escape($msgid)); } diff --git a/lib/PublicInbox/View.pm b/lib/PublicInbox/View.pm index 34f97c76..6f79f601 100644 --- a/lib/PublicInbox/View.pm +++ b/lib/PublicInbox/View.pm @@ -491,7 +491,7 @@ sub _msg_html_prepare { $ctx->{-upfx} = '../'; } my @title; - my $mid = $hdr->header_raw('Message-ID'); + my $mid = mid_clean($hdr->header_raw('Message-ID')); $mid = PublicInbox::Hval->new_msgid($mid); foreach my $h (qw(From To Cc Subject Date)) { my $v = $hdr->header($h); |