about summary refs log tree commit homepage
path: root/Documentation/txt2pre
diff options
context:
space:
mode:
Diffstat (limited to 'Documentation/txt2pre')
-rwxr-xr-xDocumentation/txt2pre14
1 files changed, 10 insertions, 4 deletions
diff --git a/Documentation/txt2pre b/Documentation/txt2pre
index ef6a4f35..2dd1597c 100755
--- a/Documentation/txt2pre
+++ b/Documentation/txt2pre
@@ -1,16 +1,22 @@
 #!/usr/bin/env perl
-# Copyright (C) 2014-2015 all contributors <meta@public-inbox.org>
-# License: AGPLv3 or later (https://www.gnu.org/licenses/agpl-3.0.txt)
+# Copyright (C) 2014-2016 all contributors <meta@public-inbox.org>
+# License: AGPL-3.0+ <https://www.gnu.org/licenses/agpl-3.0.txt>
 #
 # Stupid script to make HTML from preformatted, utf-8 text versions,
 # only generating links for http(s).  Markdown does too much
 # and requires indentation to output preformatted text.
 use strict;
 use warnings;
-use CGI qw/escapeHTML/;
 use Encode qw/encode/;
 my $str = eval { local $/; <> };
-$str = escapeHTML($str);
+my %xhtml_map = (
+        '"' => '&#34;',
+        '&' => '&#38;',
+        "'" => '&#39;',
+        '<' => '&lt;',
+        '>' => '&gt;',
+);
+$str =~ s/([<>&'"])/$xhtml_map{$1}/ge;
 $str = encode('us-ascii', $str, Encode::HTMLCREF);
 my ($title) = ($str =~ /\A([^\n]+)/);