diff options
author | Eric Wong <e@80x24.org> | 2018-12-30 12:41:25 +0000 |
---|---|---|
committer | Eric Wong <e@80x24.org> | 2018-12-30 20:15:06 +0000 |
commit | 7d82a8bc04ce2e686371abc6b438ab121b9fa7d0 (patch) | |
tree | 137fd61f2f12c0f781b670ef25bf65efbe60ab1b /lib/PublicInbox/ContentId.pm | |
parent | c3a8ba378c7d3548a5d3ede110b90f8aa8e2473e (diff) | |
download | public-inbox-7d82a8bc04ce2e686371abc6b438ab121b9fa7d0.tar.gz |
I've found two examples on https://lore.kernel.org/lkml/ where the messages declared themselves to be "multipart/mixed" but were actually plain text: <87llgalspt.fsf@free.fr> <200308111450.h7BEoOu20077@mail.osdl.org> With the mboxrd downloaded, mutt is able to view them without difficulty. Note: this change would require reindexing of Xapian to pick up the changes. But it's only two ancient messages, the first was resent by the original sender and the second is too old to be relevant.
Diffstat (limited to 'lib/PublicInbox/ContentId.pm')
-rw-r--r-- | lib/PublicInbox/ContentId.pm | 9 |
1 files changed, 1 insertions, 8 deletions
diff --git a/lib/PublicInbox/ContentId.pm b/lib/PublicInbox/ContentId.pm index b1d27eb8..dd3155be 100644 --- a/lib/PublicInbox/ContentId.pm +++ b/lib/PublicInbox/ContentId.pm @@ -75,14 +75,7 @@ sub content_digest ($) { } $dig->add("b\0"); my $ct = $part->content_type || 'text/plain'; - my $s = eval { $part->body_str }; - if ($@ && $ct =~ m!\btext/plain\b!i) { - # Try to assume UTF-8 because Alpine - # seems to do wacky things and set - # charset=X-UNKNOWN - $part->charset_set('UTF-8'); - $s = eval { $part->body_str }; - } + my ($s, undef) = msg_part_text($part, $ct); if (defined $s) { $s =~ s/\r\n/\n/gs; $s =~ s/\s*\z//s; |