diff options
author | Eric Wong <e@80x24.org> | 2018-04-23 04:16:54 +0000 |
---|---|---|
committer | Eric Wong <e@80x24.org> | 2018-04-23 04:17:10 +0000 |
commit | 55b22e6414b78336633ca243c113c712af2c3bcd (patch) | |
tree | ff3530697c36ad58209eff7c89d3b2716e24ef0c /lib | |
parent | 0f28e69ed76f6d0c14b0458019224c10590474df (diff) | |
download | public-inbox-55b22e6414b78336633ca243c113c712af2c3bcd.tar.gz |
We no longer need to parse and dedupe References: ourselves, PublicInbox::MID::references does it for us.
Diffstat (limited to 'lib')
-rw-r--r-- | lib/PublicInbox/View.pm | 22 |
1 files changed, 5 insertions, 17 deletions
diff --git a/lib/PublicInbox/View.pm b/lib/PublicInbox/View.pm index 73394671..58851edc 100644 --- a/lib/PublicInbox/View.pm +++ b/lib/PublicInbox/View.pm @@ -723,7 +723,8 @@ sub _parent_headers { my ($hdr, $srch) = @_; my $rv = ''; - my $irt = in_reply_to($hdr); + my $refs = references($hdr); + my $irt = pop @$refs; if (defined $irt) { my $v = PublicInbox::Hval->new_msgid($irt); my $html = $v->as_html; @@ -736,22 +737,9 @@ sub _parent_headers { # we show the thread skeleton at the bottom, instead. return $rv if $srch; - my $refs = $hdr->header_raw('References'); - if ($refs) { - # avoid redundant URLs wasting bandwidth - my %seen; - $seen{$irt} = 1 if defined $irt; - my @refs; - my @raw_refs = ($refs =~ /<([^>]+)>/g); - foreach my $ref (@raw_refs) { - next if $seen{$ref}; - $seen{$ref} = 1; - push @refs, linkify_ref_nosrch($ref); - } - - if (@refs) { - $rv .= 'References: '. join("\n\t", @refs) . "\n"; - } + if (@$refs) { + @$refs = map { linkify_ref_nosrch($_) } @$refs; + $rv .= 'References: '. join("\n\t", @$refs) . "\n"; } $rv; } |