Package: release.debian.org Severity: normal Tags: jessie User: release.debian....@packages.debian.org Usertags: pu
As per #826993 the perl and libencode-perl updates included in the January point release broke CSS::DOM. This is functional breakage, not just test suite breakage, but it appeared that noone has noticed (reported) this in Debian yet. Attached is a proposed patch for stable. Thanks, Dominic.
diff -Nru libcss-dom-perl-0.15/debian/changelog libcss-dom-perl-0.15/debian/changelog --- libcss-dom-perl-0.15/debian/changelog 2013-06-07 21:19:35.000000000 +0100 +++ libcss-dom-perl-0.15/debian/changelog 2016-06-11 19:32:57.000000000 +0100 @@ -1,3 +1,11 @@ +libcss-dom-perl (0.15-1+deb8u1) UNRELEASED; urgency=medium + + * Team upload. + * Apply upstream patch to work around Encode changes included in + perl and libencode-perl stable updates (Closes: #826993) + + -- Dominic Hargreaves <d...@earth.li> Sat, 11 Jun 2016 19:31:56 +0100 + libcss-dom-perl (0.15-1) unstable; urgency=low * Team upload. diff -Nru libcss-dom-perl-0.15/debian/patches/encode_workaround.patch libcss-dom-perl-0.15/debian/patches/encode_workaround.patch --- libcss-dom-perl-0.15/debian/patches/encode_workaround.patch 1970-01-01 01:00:00.000000000 +0100 +++ libcss-dom-perl-0.15/debian/patches/encode_workaround.patch 2016-06-11 19:30:47.000000000 +0100 @@ -0,0 +1,26 @@ +Author: Father Chrysostomos <spr...@cpan.org> +Origin: https://metacpan.org/release/CSS-DOM +Description: Work around an incompatible change in Encode 2.77 (RT #107221, #107043) + +diff --git a/lib/CSS/DOM/Parser.pm b/lib/CSS/DOM/Parser.pm +index 7c2156e..8eb5c1d 100644 +--- a/lib/CSS/DOM/Parser.pm ++++ b/lib/CSS/DOM/Parser.pm +@@ -578,7 +578,7 @@ sub _decode { my $at; for(''.shift) { + ) { + my $origenc = my $enc = Encode::decode('utf16le', $2); + my $dec = eval{Encode::decode($enc, $1, 9)}; +- defined $dec or $dec ++ !defined $dec || $dec !~ /^\@/ and $dec + = eval{Encode::decode($enc.='-le', $1, 9)}; + if(defined $dec) { + $dec eq "\@charset \"$origenc\";" +@@ -638,7 +638,7 @@ sub _decode { my $at; for(''.shift) { + ) { + my $origenc = my $enc = Encode::decode('utf32le', $2); + my $dec = eval{Encode::decode($enc, $1, 9)}; +- defined $dec or $dec ++ !defined $dec || $dec !~ /^\@/ and $dec + = eval{Encode::decode($enc.='-le', $1, 9)}; + if(defined $dec) { + $dec eq "\@charset \"$origenc\";" diff -Nru libcss-dom-perl-0.15/debian/patches/series libcss-dom-perl-0.15/debian/patches/series --- libcss-dom-perl-0.15/debian/patches/series 2013-06-07 21:19:35.000000000 +0100 +++ libcss-dom-perl-0.15/debian/patches/series 2016-06-11 19:31:43.000000000 +0100 @@ -1 +1,2 @@ pod-encoding.patch +encode_workaround.patch