From b2fb0d34691c1944bb8a870172a4e5535ad4f6fc Mon Sep 17 00:00:00 2001 From: Jitka Plesnikova Date: Oct 16 2012 08:32:07 +0000 Subject: Update to perl 5.14.3 --- diff --git a/.gitignore b/.gitignore index 4f0fc9a..fcb7765 100644 --- a/.gitignore +++ b/.gitignore @@ -10,3 +10,4 @@ filter-requires.sh /perl-5.14.0.tar.gz /perl-5.14.1.tar.gz /perl-5.14.2.tar.bz2 +/perl-5.14.3.tar.bz2 diff --git a/perl-5.14.2-PATCH-perl-101710-Regression-with-i-latin1-chars.patch b/perl-5.14.2-PATCH-perl-101710-Regression-with-i-latin1-chars.patch deleted file mode 100644 index 2cbba13..0000000 --- a/perl-5.14.2-PATCH-perl-101710-Regression-with-i-latin1-chars.patch +++ /dev/null @@ -1,83 +0,0 @@ -From 4cf15b2d9def61a3bb49ac9b8729179fb6ce17c6 Mon Sep 17 00:00:00 2001 -From: Karl Williamson -Date: Tue, 1 Nov 2011 17:57:15 -0600 -Subject: [PATCH] PATCH: [perl #101710] Regression with /i, latin1 chars. - -Petr Pisar: Ported to 5.14.2: - -From bbdd8bad57f8d77a4e6c3725a49d4d3589efedd7 Mon Sep 17 00:00:00 2001 -From: Karl Williamson -Date: Tue, 1 Nov 2011 17:57:15 -0600 -Subject: [PATCH] PATCH: [perl #101710] Regression with /i, latin1 chars. - -The root cause of this bug is that it was assuming that a string was in -utf8 when it wasn't, and so was thinking that a byte was a starter byte -that wasn't, so was skipping ahead based on that starter byte. ---- - pod/perldelta.pod | 8 ++++++++ - regexec.c | 2 +- - t/re/pat.t | 9 ++++++++- - 3 files changed, 17 insertions(+), 2 deletions(-) - -diff --git a/pod/perldelta.pod b/pod/perldelta.pod -index 425708f..55e6e27 100644 ---- a/pod/perldelta.pod -+++ b/pod/perldelta.pod -@@ -168,6 +168,14 @@ A panic involving the combination of the regular expression modifiers - C introduced in 5.14.0 and the C<\b> escape sequence has been - fixed [perl #95964]. - -+=item * -+ -+A regression has been fixed that was introduced in 5.14, in C -+regular expression matching, in which a match improperly fails if the -+pattern is in UTF-8, the target string is not, and a Latin-1 character -+precedes a character in the string that should match the pattern. [perl -+#101710] -+ - =back - - =head1 Known Problems -diff --git a/regexec.c b/regexec.c -index 0dc093f..2354be1 100644 ---- a/regexec.c -+++ b/regexec.c -@@ -1521,7 +1521,7 @@ S_find_byclass(pTHX_ regexp * prog, const regnode *c, char *s, - { - goto got_it; - } -- s += UTF8SKIP(s); -+ s += (utf8_target) ? UTF8SKIP(s) : 1; - } - break; - case BOUNDL: -diff --git a/t/re/pat.t b/t/re/pat.t -index 4ef9663..4eb05c6 100644 ---- a/t/re/pat.t -+++ b/t/re/pat.t -@@ -21,7 +21,7 @@ BEGIN { - require './test.pl'; - } - --plan tests => 451; # Update this when adding/deleting tests. -+plan tests => 452; # Update this when adding/deleting tests. - - run_tests() unless caller; - -@@ -1167,6 +1167,13 @@ sub run_tests { - is($got,$want,'RT #84294: check that "ab" =~ /((\w+)(?{ push @got, $2 })){2}/ leaves @got in the correct state'); - } - -+ -+ { # [perl #101710] -+ my $pat = "b"; -+ utf8::upgrade($pat); -+ like("\xffb", qr/$pat/i, "/i: utf8 pattern, non-utf8 string, latin1-char preceding matching char in string"); -+ } -+ - } # End of sub run_tests - - 1; --- -1.7.11.4 - diff --git a/perl-5.14.2-digest_eval.patch b/perl-5.14.2-digest_eval.patch deleted file mode 100644 index dc7cc2d..0000000 --- a/perl-5.14.2-digest_eval.patch +++ /dev/null @@ -1,28 +0,0 @@ -From dbcab24bb98b4a243c8330bc7017c2080832b3f9 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= -Date: Tue, 4 Oct 2011 13:46:39 +0200 -Subject: [PATCH] Fix code injection in Digest - -See for more details. ---- - cpan/Digest/Digest.pm | 4 +++- - 1 files changed, 3 insertions(+), 1 deletions(-) - -diff --git a/cpan/Digest/Digest.pm b/cpan/Digest/Digest.pm -index 384dfc8..4b923ae 100644 ---- a/cpan/Digest/Digest.pm -+++ b/cpan/Digest/Digest.pm -@@ -35,7 +35,9 @@ sub new - ($class, @args) = @$class if ref($class); - no strict 'refs'; - unless (exists ${"$class\::"}{"VERSION"}) { -- eval "require $class"; -+ my $pm_file = $class . ".pm"; -+ $pm_file =~ s{::}{/}g; -+ eval { require $pm_file }; - if ($@) { - $err ||= $@; - next; --- -1.7.6.4 - diff --git a/perl.spec b/perl.spec index 9443a9d..4cddecf 100644 --- a/perl.spec +++ b/perl.spec @@ -1,4 +1,4 @@ -%global perl_version 5.14.2 +%global perl_version 5.14.3 %global perl_epoch 4 %global perl_arch_stem -thread-multi %global perl_archname %{_arch}-%{_os}%{perl_arch_stem} @@ -24,7 +24,7 @@ Name: perl Version: %{perl_version} # release number must be even higher, because dual-lived modules will be broken otherwise -Release: 215%{?dist} +Release: 216%{?dist} Epoch: %{perl_epoch} Summary: Practical Extraction and Report Language Group: Development/Languages @@ -70,9 +70,6 @@ Patch7: perl-5.10.0-x86_64-io-test-failure.patch # switch off test, which is failing only on koji (fork) Patch8: perl-5.14.1-offtest.patch -# Fix code injection in Digest, rhbz #743010, RT#71390, fixed in Digest-1.17. -Patch9: perl-5.14.2-digest_eval.patch - # Change Perl_repeatcpy() prototype to allow repeat count above 2^31 # rhbz #720610, Perl RT#94560, accepted as v5.15.4-24-g26e1303. Patch10: perl-5.14.2-large-repeat-heap-abuse.patch @@ -104,9 +101,6 @@ Patch17: perl-5.14.2-RT-113730-should-be-cleared-on-do-IO-error.patch # Do not truncate syscall() return value to 32 bits, rhbz#838551, RT#113980 Patch18: perl-5.16.1-perl-113980-pp_syscall-I32-retval-truncates-the-retu.patch -# Match starting byte in non-UTF-8 mode, rhbz#801739, RT#101710 -Patch19: perl-5.14.2-PATCH-perl-101710-Regression-with-i-latin1-chars.patch - # Free hash entries before values on delete, rhbz#771303, RT#100340 Patch20: perl-5.14.2-perl-100340-Free-hash-entries-before-values-on-delet.patch @@ -128,6 +122,7 @@ BuildRequires: procps, rsyslog # The long line of Perl provides. # Compat provides +Provides: perl(:MODULE_COMPAT_5.14.3) Provides: perl(:MODULE_COMPAT_5.14.2) Provides: perl(:MODULE_COMPAT_5.14.1) Provides: perl(:MODULE_COMPAT_5.14.0) @@ -1273,7 +1268,6 @@ tarball from perl.org. %patch6 -p1 %patch7 -p1 %patch8 -p1 -%patch9 -p1 %patch10 -p1 %patch11 -p1 %patch12 -p1 @@ -1283,7 +1277,6 @@ tarball from perl.org. %patch16 -p1 %patch17 -p1 %patch18 -p1 -%patch19 -p1 %patch20 -p1 %patch21 -p1 @@ -1484,7 +1477,6 @@ pushd %{build_archlib}/CORE/ 'Fedora Patch5: USE_MM_LD_RUN_PATH' \ 'Fedora Patch6: Skip hostname tests, due to builders not being network capable' \ 'Fedora Patch7: Dont run one io test due to random builder failures' \ - 'Fedora Patch9: Fix code injection in Digest->new()' \ 'Fedora Patch10: Change Perl_repeatcpy() to allow count above 2^31' \ 'Fedora Patch11: Fix leak with non-matching named captures' \ 'Fedora Patch12: Fix interrupted reading' \ @@ -1494,7 +1486,6 @@ pushd %{build_archlib}/CORE/ 'Fedora Patch16: Fix find2perl to translate ? glob properly (RT#113054)' \ 'Fedora Patch17: Clear $@ before "do" I/O error (RT#113730)' \ 'Fedora Patch18: Do not truncate syscall() return value to 32 bits (RT#113980)' \ - 'Fedora Patch19: Match starting byte in non-UTF-8 mode (RT#101710)' \ 'Fedora Patch20: Free hash entries before values on delete (RT#100340)' \ 'Fedora Patch21: Override the Pod::Simple::parse_file (CPANRT#77530)' \ %{nil} @@ -2448,6 +2439,11 @@ sed \ # Old changelog entries are preserved in CVS. %changelog +* Mon Oct 15 2012 Jitka Plesnikova - 4:5.14.3-216 +- 5.14.3 bump (see + https://metacpan.org/module/DOM/perl-5.14.3/pod/perldelta.pod for release + notes). + * Fri Sep 14 2012 Petr Pisar - 4:5.14.2-215 - Override the Pod::Simple::parse_file to set output to STDOUT by default (bug #826872) diff --git a/sources b/sources index 8811357..77782a3 100644 --- a/sources +++ b/sources @@ -1,5 +1 @@ -aceea3db13a159cd5f7e5f2e3ad9534f perl-5.8.0-libdir64.patch -ad5d07285d6e4914384b43c9abc2bdba filter-requires.sh -1737a36154bb5bca781296794afc6791 perl.stp -df28fe2c574e8807d0a803308c545dca perl-example.stp -04a4c5d3c1f9f19d77daff8e8cd19a26 perl-5.14.2.tar.bz2 +0005793e734e42f62d26e16640b7490d perl-5.14.3.tar.bz2