From 9d1e5fadd7d18f4c96ab0509d673040e34225a04 Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Sun, 14 Aug 2016 10:21:09 +0000 Subject: www: do not unecessarily escape some chars in paths Based on reading RFC 3986, it seems '@', ':', '!', '$', '&', "'", '; '(', ')', '*', '+', ',', ';', '=' are all allowed in path-absolute where we have the Message-ID. In any case, it seems '@' is fairly common in path components nowadays and too common in Message-IDs. --- lib/PublicInbox/Hval.pm | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) (limited to 'lib/PublicInbox/Hval.pm') diff --git a/lib/PublicInbox/Hval.pm b/lib/PublicInbox/Hval.pm index f2620737..72496065 100644 --- a/lib/PublicInbox/Hval.pm +++ b/lib/PublicInbox/Hval.pm @@ -7,8 +7,7 @@ package PublicInbox::Hval; use strict; use warnings; use Encode qw(find_encoding); -use URI::Escape qw(uri_escape_utf8); -use PublicInbox::MID qw/mid_clean/; +use PublicInbox::MID qw/mid_clean mid_escape/; use base qw/Exporter/; our @EXPORT_OK = qw/ascii_html/; @@ -33,7 +32,7 @@ sub new { sub new_msgid { my ($class, $msgid) = @_; $msgid = mid_clean($msgid); - $class->new($msgid, $msgid); + $class->new($msgid, mid_escape($msgid)); } sub new_oneline { @@ -74,7 +73,6 @@ sub ascii_html { } sub as_html { ascii_html($_[0]->{raw}) } -sub as_href { ascii_html(uri_escape_utf8($_[0]->{href})) } sub raw { if (defined $_[1]) { -- cgit v1.2.3-24-ge0c7