diff options
author | schmonz <schmonz@pkgsrc.org> | 2014-09-13 00:08:21 +0000 |
---|---|---|
committer | schmonz <schmonz@pkgsrc.org> | 2014-09-13 00:08:21 +0000 |
commit | 6391fa5d633f31f74c120548fd1add792f874fcf (patch) | |
tree | ec64a9e1686ce7d3bd0fbf0898a0a39a698e576c /www | |
parent | 10030b687efd60d22805c2f98404b63f3a57ccb3 (diff) | |
download | pkgsrc-6391fa5d633f31f74c120548fd1add792f874fcf.tar.gz |
Avoid decoding Unicode twice in CGI forms with Perl 5.20's bundled
Encode.pm. Bump PKGREVISION.
Diffstat (limited to 'www')
-rw-r--r-- | www/ikiwiki/Makefile | 4 | ||||
-rw-r--r-- | www/ikiwiki/distinfo | 3 | ||||
-rw-r--r-- | www/ikiwiki/patches/patch-IkiWiki_CGI.pm | 32 |
3 files changed, 36 insertions, 3 deletions
diff --git a/www/ikiwiki/Makefile b/www/ikiwiki/Makefile index 18e0a2a48b9..9ded8bd7838 100644 --- a/www/ikiwiki/Makefile +++ b/www/ikiwiki/Makefile @@ -1,9 +1,9 @@ -# $NetBSD: Makefile,v 1.122 2014/08/23 13:02:37 schmonz Exp $ +# $NetBSD: Makefile,v 1.123 2014/09/13 00:08:21 schmonz Exp $ # DISTNAME= ikiwiki_3.20140815 PKGNAME= ${DISTNAME:S/_/-/} -PKGREVISION= 1 +PKGREVISION= 2 CATEGORIES= www textproc MASTER_SITES= ${MASTER_SITE_DEBIAN:=pool/main/i/ikiwiki/} diff --git a/www/ikiwiki/distinfo b/www/ikiwiki/distinfo index af3a5f3ddac..bb5984f3af3 100644 --- a/www/ikiwiki/distinfo +++ b/www/ikiwiki/distinfo @@ -1,6 +1,7 @@ -$NetBSD: distinfo,v 1.99 2014/08/23 13:02:37 schmonz Exp $ +$NetBSD: distinfo,v 1.100 2014/09/13 00:08:21 schmonz Exp $ SHA1 (ikiwiki_3.20140815.tar.gz) = 069b14c8cc22ef7db1a4f162763312c54379042d RMD160 (ikiwiki_3.20140815.tar.gz) = 2e7b2c0e6fb1513157b2d152bc5d3afe9018871f Size (ikiwiki_3.20140815.tar.gz) = 3261039 bytes SHA1 (patch-IkiWiki.pm) = 5f82b1ebbe3ff11e8b18a167eec97de571b1980a +SHA1 (patch-IkiWiki_CGI.pm) = 43b3ceb4e5e429d0c6cc481d66cd0beca0a2eecc diff --git a/www/ikiwiki/patches/patch-IkiWiki_CGI.pm b/www/ikiwiki/patches/patch-IkiWiki_CGI.pm new file mode 100644 index 00000000000..7218d68f151 --- /dev/null +++ b/www/ikiwiki/patches/patch-IkiWiki_CGI.pm @@ -0,0 +1,32 @@ +$NetBSD: patch-IkiWiki_CGI.pm,v 1.1 2014/09/13 00:08:22 schmonz Exp $ + +Cherry-pick feb21eb from upstream git to avoid Unicode being decoded +twice in CGI forms under Perl 5.20 (with bundled Encode.pm 2.53). + +--- IkiWiki/CGI.pm.orig 2014-07-02 19:45:57.000000000 +0000 ++++ IkiWiki/CGI.pm +@@ -110,11 +110,23 @@ sub decode_cgi_utf8 ($) { + } + } + ++sub safe_decode_utf8 ($) { ++ my $octets = shift; ++ # call decode_utf8 on >= 5.20 only if it's not already decoded, ++ # otherwise it balks, on < 5.20, always call it ++ if ($] < 5.02 || !Encode::is_utf8($octets)) { ++ return decode_utf8($octets); ++ } ++ else { ++ return $octets; ++ } ++} ++ + sub decode_form_utf8 ($) { + if ($] >= 5.01) { + my $form = shift; + foreach my $f ($form->field) { +- my @value=map { decode_utf8($_) } $form->field($f); ++ my @value=map { safe_decode_utf8($_) } $form->field($f); + $form->field(name => $f, + value => \@value, + force => 1, |