From: Eric Wong (Contractor, The Linux Foundation) Date: Thu, 29 Mar 2018 09:57:55 +0000 (+0000) Subject: mbox: avoid extracting Message-ID for linkification X-Git-Tag: v1.1.0-pre1~104 X-Git-Url: http://www.git.stargrave.org/?p=public-inbox.git;a=commitdiff_plain;h=a11bcd26245427e16f7e62d99b9707522e2d64e2 mbox: avoid extracting Message-ID for linkification We can avoid a small amount of overhead and use the "preferred" Message-ID based on what is in the SearchMsg object. --- diff --git a/lib/PublicInbox/Mbox.pm b/lib/PublicInbox/Mbox.pm index 381bcada..1b68f027 100644 --- a/lib/PublicInbox/Mbox.pm +++ b/lib/PublicInbox/Mbox.pm @@ -92,7 +92,7 @@ sub emit_raw { } sub msg_str { - my ($ctx, $simple) = @_; # Email::Simple object + my ($ctx, $simple, $mid) = @_; # Email::Simple object my $header_obj = $simple->header_obj; # drop potentially confusing headers, ssoma already should've dropped @@ -102,7 +102,7 @@ sub msg_str { } my $ibx = $ctx->{-inbox}; my $base = $ibx->base_url($ctx->{env}); - my $mid = mid_clean($header_obj->header('Message-ID')); + $mid = $ctx->{mid} unless defined $mid; $mid = mid_escape($mid); my @append = ( 'Archived-At', "<$base$mid/>", @@ -225,7 +225,8 @@ sub getline { while (defined(my $smsg = shift @{$self->{msgs}})) { my $msg = eval { $ibx->msg_by_smsg($smsg) } or next; $msg = Email::Simple->new($msg); - $gz->write(PublicInbox::Mbox::msg_str($ctx, $msg)); + $gz->write(PublicInbox::Mbox::msg_str($ctx, $msg, + $smsg->mid)); # use subject of first message as subject if (my $hdr = delete $self->{hdr}) {