diff options
author | Eric Wong <e@yhbt.net> | 2020-02-15 09:46:34 +0000 |
---|---|---|
committer | Eric Wong <e@yhbt.net> | 2020-02-16 00:06:32 +0000 |
commit | 79587ed2cfa012137712508fd7e7f657fab75087 (patch) | |
tree | 6c96fd63c2fd60a81f43b05c8d023c041cd5853d /lib/PublicInbox/View.pm | |
parent | aa0e67e63e58e0ee4fc3918bde25b9c04d48954a (diff) | |
download | public-inbox-79587ed2cfa012137712508fd7e7f657fab75087.tar.gz |
While multi-Subject messages are unfortunate, try not to generate confusing/invalid HTML with multiple elements having the same HTML id attribute.
Diffstat (limited to 'lib/PublicInbox/View.pm')
-rw-r--r-- | lib/PublicInbox/View.pm | 15 |
1 files changed, 7 insertions, 8 deletions
diff --git a/lib/PublicInbox/View.pm b/lib/PublicInbox/View.pm index dcaee1ae..45c191db 100644 --- a/lib/PublicInbox/View.pm +++ b/lib/PublicInbox/View.pm @@ -651,16 +651,15 @@ sub _msg_page_prepare_obuf { } my @subj = $hdr->header('Subject'); if (@subj) { - for my $v (@subj) { + my $v = ascii_html(shift @subj); + obfuscate_addrs($obfs_ibx, $v) if $obfs_ibx; + $rv .= 'Subject: '; + $rv .= $over ? qq(<a\nhref="#r"\nid=t>$v</a>\n) : "$v\n"; + $title[0] = $v; + for $v (@subj) { # multi-Subject message :< $v = ascii_html($v); obfuscate_addrs($obfs_ibx, $v) if $obfs_ibx; - $rv .= 'Subject: '; - if ($over) { - $rv .= qq(<a\nhref="#r"\nid=t>$v</a>\n); - } else { - $rv .= "$v\n"; - } - $title[0] //= $v; + $rv .= "Subject: $v\n"; } } else { # dummy anchor for thread skeleton at bottom of page $rv .= qq(<a\nhref="#r"\nid=t></a>) if $over; |