diff --git a/.gitignore b/.gitignore index f7432e3..2956760 100644 --- a/.gitignore +++ b/.gitignore @@ -31,3 +31,4 @@ perl-5.12.1.tar.gz /perl-5.28.1.tar.xz /perl-5.28.2.tar.xz /perl-5.30.0.tar.xz +/perl-5.30.1.tar.xz diff --git a/perl-5.31.0-134008-More-carefully-ignore-negative-precision-in-s.patch b/perl-5.31.0-134008-More-carefully-ignore-negative-precision-in-s.patch deleted file mode 100644 index 0985db6..0000000 --- a/perl-5.31.0-134008-More-carefully-ignore-negative-precision-in-s.patch +++ /dev/null @@ -1,63 +0,0 @@ -From b0f5b1daacb21ab7e46a772a6ff0f70ca627cb58 Mon Sep 17 00:00:00 2001 -From: Hugo van der Sanden -Date: Tue, 9 Apr 2019 14:27:41 +0100 -Subject: [PATCH 1/2] [#134008] More carefully ignore negative precision in - sprintf -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Check has_precis more consistently; ensure precis is left as 0 if provided -as a negative number. - -Signed-off-by: Petr Písař ---- - sv.c | 7 +++++-- - t/op/sprintf2.t | 3 +++ - 2 files changed, 8 insertions(+), 2 deletions(-) - -diff --git a/sv.c b/sv.c -index de67b7657e..8fbca52eb2 100644 ---- a/sv.c -+++ b/sv.c -@@ -11765,11 +11765,11 @@ S_format_hexfp(pTHX_ char * const buf, const STRLEN bufsize, const char c, - else { - *p++ = '0'; - exponent = 0; -- zerotail = precis; -+ zerotail = has_precis ? precis : 0; - } - - /* The radix is always output if precis, or if alt. */ -- if (precis > 0 || alt) { -+ if ((has_precis && precis > 0) || alt) { - hexradix = TRUE; - } - -@@ -12223,6 +12223,9 @@ Perl_sv_vcatpvfn_flags(pTHX_ SV *const sv, const char *const pat, const STRLEN p - } - precis = S_sprintf_arg_num_val(aTHX_ args, i, sv, &neg); - has_precis = !neg; -+ /* ignore negative precision */ -+ if (!has_precis) -+ precis = 0; - } - } - else { -diff --git a/t/op/sprintf2.t b/t/op/sprintf2.t -index dc87821152..569bd8053d 100644 ---- a/t/op/sprintf2.t -+++ b/t/op/sprintf2.t -@@ -838,6 +838,9 @@ SKIP: { - # [rt.perl.org #128889] - is(sprintf("%.*a", -1, 1.03125), "0x1.08p+0", "[rt.perl.org #128889]"); - -+ # [rt.perl.org #134008] -+ is(sprintf("%.*a", -99999, 1.03125), "0x1.08p+0", "[rt.perl.org #134008]"); -+ - # [rt.perl.org #128890] - is(sprintf("%a", 0x1.18p+0), "0x1.18p+0"); - is(sprintf("%.1a", 0x1.08p+0), "0x1.0p+0"); --- -2.20.1 - diff --git a/perl-5.31.0-Add-test-for-perl-134169.patch b/perl-5.31.0-Add-test-for-perl-134169.patch deleted file mode 100644 index 8eea2bf..0000000 --- a/perl-5.31.0-Add-test-for-perl-134169.patch +++ /dev/null @@ -1,56 +0,0 @@ -From 3121d45269f99e4f103ab5b830d517ded30081a8 Mon Sep 17 00:00:00 2001 -From: Manuel Mausz -Date: Mon, 17 Jun 2019 10:24:03 +0200 -Subject: [PATCH] Add test for perl #134169 -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Signed-off-by: Petr Písař ---- - t/op/groups.t | 22 +++++++++++++++++++++- - 1 file changed, 21 insertions(+), 1 deletion(-) - -diff --git a/t/op/groups.t b/t/op/groups.t -index e50c50a8c1..7e064cc21f 100644 ---- a/t/op/groups.t -+++ b/t/op/groups.t -@@ -51,7 +51,7 @@ sub Test { - my %basegroup = basegroups( $pwgid, $pwgnam ); - my @extracted_supplementary_groups = remove_basegroup( \ %basegroup, \ @extracted_groups ); - -- plan 2; -+ plan 3; - - - # Test: The supplementary groups in $( should match the -@@ -121,6 +121,26 @@ sub Test { - $gid_count->{0} //= 0; - ok 0 == $pwgid || $gid_count->{0} < 2, "groupstype should be type short, not long"; - -+ SKIP: { -+ # try to add a group as supplementary group -+ my $root_uid = 0; -+ skip "uid!=0", 1 if $< != $root_uid and $> != $root_uid; -+ my @groups = split ' ', $); -+ my @sup_group; -+ setgrent; -+ while(my @ent = getgrent) { -+ next if grep { $_ == $ent[2] } @groups; -+ @sup_group = @ent; -+ last; -+ } -+ endgrent; -+ skip "No group found we could add as a supplementary group", 1 -+ if (!@sup_group); -+ $) = "$) @sup_group[2]"; -+ my $ok = grep { $_ == $sup_group[2] } split ' ', $); -+ ok $ok, "Group `$sup_group[0]' added as supplementary group"; -+ } -+ - return; - } - --- -2.20.1 - diff --git a/perl-5.31.0-Manuel-Mausz-is-now-a-perl-author.patch b/perl-5.31.0-Manuel-Mausz-is-now-a-perl-author.patch deleted file mode 100644 index 1a19b24..0000000 --- a/perl-5.31.0-Manuel-Mausz-is-now-a-perl-author.patch +++ /dev/null @@ -1,28 +0,0 @@ -From f83193f25095f9353c8e34c187184bc25fdadf51 Mon Sep 17 00:00:00 2001 -From: Tony Cook -Date: Wed, 19 Jun 2019 11:25:13 +1000 -Subject: [PATCH] Manuel Mausz is now a perl author -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Signed-off-by: Petr Písař ---- - AUTHORS | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/AUTHORS b/AUTHORS -index 8d5f5b0ad3..0091100600 100644 ---- a/AUTHORS -+++ b/AUTHORS -@@ -772,6 +772,7 @@ Maik Hentsche - Major Sébastien - Makoto MATSUSHITA - Malcolm Beattie -+Manuel Mausz - Manuel Valente - Marc Green - Marc Lehmann --- -2.20.1 - diff --git a/perl-5.31.0-PATCH-perl-134134-read-beyond-end-of-buffer.patch b/perl-5.31.0-PATCH-perl-134134-read-beyond-end-of-buffer.patch deleted file mode 100644 index 3132285..0000000 --- a/perl-5.31.0-PATCH-perl-134134-read-beyond-end-of-buffer.patch +++ /dev/null @@ -1,41 +0,0 @@ -From 2d26cf4aed90a77ac5e93ddec29770756027b788 Mon Sep 17 00:00:00 2001 -From: Karl Williamson -Date: Fri, 24 May 2019 09:15:59 -0600 -Subject: [PATCH] PATCH: [perl #134134] read beyond end of buffer -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -This turns out to be because of a special input case in myatof3(), -wherein if the input length is 0, it call strlen to find the length. - -The solution is to add a test and not call the function unless the -length is positive. - -Signed-off-by: Petr Písař ---- - regcomp.c | 6 ++++-- - 1 file changed, 4 insertions(+), 2 deletions(-) - -diff --git a/regcomp.c b/regcomp.c -index 9bd6dd3739..3ad09c52b2 100644 ---- a/regcomp.c -+++ b/regcomp.c -@@ -23428,10 +23428,12 @@ Perl_parse_uniprop_string(pTHX_ - * NV. */ - - NV value; -+ SSize_t value_len = lookup_len - equals_pos; - - /* Get the value */ -- if (my_atof3(lookup_name + equals_pos, &value, -- lookup_len - equals_pos) -+ if ( value_len <= 0 -+ || my_atof3(lookup_name + equals_pos, &value, -+ value_len) - != lookup_name + lookup_len) - { - goto failed; --- -2.20.1 - diff --git a/perl-5.31.0-perl-133989-scalar-the-argument-to-readline-if-any.patch b/perl-5.31.0-perl-133989-scalar-the-argument-to-readline-if-any.patch deleted file mode 100644 index 902068b..0000000 --- a/perl-5.31.0-perl-133989-scalar-the-argument-to-readline-if-any.patch +++ /dev/null @@ -1,47 +0,0 @@ -From a8e0c1fd5ade7c30aa0782f1aea274ef89190f6d Mon Sep 17 00:00:00 2001 -From: Tony Cook -Date: Wed, 12 Jun 2019 15:21:47 +1000 -Subject: [PATCH] (perl #133989) scalar() the argument to readline, if any -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -C< readline @foo > would treat @foo as array. If the array was empty -this would push zero items and readline() would then pop one item, -possibly underflowing the stack. - -Signed-off-by: Petr Písař ---- - op.c | 1 + - t/lib/croak/pp_sys | 6 ++++++ - 2 files changed, 7 insertions(+) - -diff --git a/op.c b/op.c -index 6ad192307f..7aa002cadd 100644 ---- a/op.c -+++ b/op.c -@@ -12142,6 +12142,7 @@ Perl_ck_readline(pTHX_ OP *o) - if (o->op_flags & OPf_KIDS) { - OP *kid = cLISTOPo->op_first; - if (kid->op_type == OP_RV2GV) kid->op_private |= OPpALLOW_FAKE; -+ scalar(kid); - } - else { - OP * const newop -diff --git a/t/lib/croak/pp_sys b/t/lib/croak/pp_sys -index be100da27a..cf9e4ef0ed 100644 ---- a/t/lib/croak/pp_sys -+++ b/t/lib/croak/pp_sys -@@ -93,3 +93,9 @@ close $fh; - END { unlink $file; } - EXPECT - syswrite() isn't allowed on :utf8 handles at - line 5. -+######## -+# NAME readline() didn't scalar() its argument -+# this would assert rather than failing on the method call -+E{0;readline@0} -+EXPECT -+Can't call method "E" without a package or object reference at - line 2. --- -2.20.1 - diff --git a/perl-5.31.0-perl-134035-ensure-sv_gets-handles-a-signal-handler-.patch b/perl-5.31.0-perl-134035-ensure-sv_gets-handles-a-signal-handler-.patch deleted file mode 100644 index 555cca3..0000000 --- a/perl-5.31.0-perl-134035-ensure-sv_gets-handles-a-signal-handler-.patch +++ /dev/null @@ -1,42 +0,0 @@ -From 368ac47cccd4ffca6e83a26289c152a32c2ea385 Mon Sep 17 00:00:00 2001 -From: Tony Cook -Date: Wed, 17 Apr 2019 15:45:15 +1000 -Subject: [PATCH] (perl #134035) ensure sv_gets() handles a signal handler - modifying sv -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -At a very basic level at least. - -In the ticket cases, a signal handler is modifying (and reallocating -PVX) the sv, while sv_gets() retained a pointer to the inside of the -SV. - -This still has some problems, like if the signal handler ends up -shortening SV, there may be old data left between the old position -and the new position, but I think that's a case of user error. - -Signed-off-by: Petr Písař ---- - sv.c | 3 +++ - 1 file changed, 3 insertions(+) - -diff --git a/sv.c b/sv.c -index 8bc0af0c16..83de536ad7 100644 ---- a/sv.c -+++ b/sv.c -@@ -8755,7 +8755,10 @@ Perl_sv_gets(pTHX_ SV *const sv, PerlIO *const fp, I32 append) - - Note we have to deal with the char in 'i' if we are not at EOF - */ -+ bpx = bp - (STDCHAR*)SvPVX_const(sv); -+ /* signals might be called here, possibly modifying sv */ - i = PerlIO_getc(fp); /* get more characters */ -+ bp = (STDCHAR*)SvPVX_const(sv) + bpx; - - DEBUG_Pv(PerlIO_printf(Perl_debug_log, - "Screamer: post: FILE * thinks ptr=%" UVuf ", cnt=%" IVdf ", base=%" UVuf "\n", --- -2.20.1 - diff --git a/perl-5.31.0-perl-134048-prevent-an-erroneous-assertion-on-OP_SCA.patch b/perl-5.31.0-perl-134048-prevent-an-erroneous-assertion-on-OP_SCA.patch deleted file mode 100644 index 2bc28a8..0000000 --- a/perl-5.31.0-perl-134048-prevent-an-erroneous-assertion-on-OP_SCA.patch +++ /dev/null @@ -1,50 +0,0 @@ -From 94a2f6a3c87a0795b9b1aabd49616f90c922b835 Mon Sep 17 00:00:00 2001 -From: Tony Cook -Date: Wed, 24 Apr 2019 11:05:21 +1000 -Subject: [PATCH] (perl #134048) prevent an erroneous assertion on OP_SCALAR -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Signed-off-by: Petr Písař ---- - op.c | 3 ++- - t/op/multideref.t | 4 +++- - 2 files changed, 5 insertions(+), 2 deletions(-) - -diff --git a/op.c b/op.c -index 98a438d6f2..f63eeadc36 100644 ---- a/op.c -+++ b/op.c -@@ -14904,7 +14904,8 @@ S_maybe_multideref(pTHX_ OP *start, OP *orig_o, UV orig_action, U8 hints) - #ifdef DEBUGGING - OP *n = o->op_next; - while (n && ( n->op_type == OP_NULL -- || n->op_type == OP_LIST)) -+ || n->op_type == OP_LIST -+ || n->op_type == OP_SCALAR)) - n = n->op_next; - assert(n && n->op_type == OP_LEAVE); - #endif -diff --git a/t/op/multideref.t b/t/op/multideref.t -index 12b04536e5..23487ca283 100644 ---- a/t/op/multideref.t -+++ b/t/op/multideref.t -@@ -18,7 +18,7 @@ BEGIN { - use warnings; - use strict; - --plan 64; -+plan 65; - - - # check that strict refs hint is handled -@@ -242,3 +242,5 @@ sub defer {} - ::pass("S_maybe_multideref() shouldn't leak on croak"); - } - -+fresh_perl_is('0for%{scalar local$0[0]}', '', {}, -+ "RT #134045 assertion on the OP_SCALAR"); --- -2.20.1 - diff --git a/perl-5.31.0-perl-134169-mg.c-reset-endptr-after-use.patch b/perl-5.31.0-perl-134169-mg.c-reset-endptr-after-use.patch deleted file mode 100644 index ec0ce9f..0000000 --- a/perl-5.31.0-perl-134169-mg.c-reset-endptr-after-use.patch +++ /dev/null @@ -1,40 +0,0 @@ -From 79e302e6c3f815bf4cb72a5bacc3012595970db9 Mon Sep 17 00:00:00 2001 -From: Manuel Mausz -Date: Tue, 4 Jun 2019 00:29:09 +0200 -Subject: [PATCH] (perl #134169) mg.c reset endptr after use -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Perl_grok_atoUV has been changed so endptr constraints the input. Thus we need to reset the endptr after every use. - -Signed-off-by: Petr Písař ---- - mg.c | 4 +++- - 1 file changed, 3 insertions(+), 1 deletion(-) - -diff --git a/mg.c b/mg.c -index 26211dd4d0..f235f0ee5a 100644 ---- a/mg.c -+++ b/mg.c -@@ -3178,7 +3178,8 @@ Perl_magic_set(pTHX_ SV *sv, MAGIC *mg) - { - const char *p = SvPV_const(sv, len); - Groups_t *gary = NULL; -- const char* endptr = p + len; -+ const char* p_end = p + len; -+ const char* endptr = p_end; - UV uv; - #ifdef _SC_NGROUPS_MAX - int maxgrp = sysconf(_SC_NGROUPS_MAX); -@@ -3201,6 +3202,7 @@ Perl_magic_set(pTHX_ SV *sv, MAGIC *mg) - if (endptr == NULL) - break; - p = endptr; -+ endptr = p_end; - while (isSPACE(*p)) - ++p; - if (!*p) --- -2.20.1 - diff --git a/perl-5.31.2-avoid-use-after-free-in.patch b/perl-5.31.2-avoid-use-after-free-in.patch deleted file mode 100644 index 2738665..0000000 --- a/perl-5.31.2-avoid-use-after-free-in.patch +++ /dev/null @@ -1,110 +0,0 @@ -From 1d48e83dd8863e78e8422ed502d9b2f3199193f5 Mon Sep 17 00:00:00 2001 -From: David Mitchell -Date: Wed, 19 Jun 2019 13:03:22 +0100 -Subject: [PATCH] avoid use-after free in /(?{...})/ -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -RT #134208 - -In something like - - eval { sub { " " }->() =~ /(?{ die })/ } - -When the match string gets aliased to $_, the SAVE_DEFSV is done after the -SAVEDESTRUCTOR_X(S_cleanup_regmatch_info_aux). So if croaking, the SV -gets SvREFCNT_dec()ed by the SAVE_DEFSV, then S_cleanup_regmatch_info_aux() -manipulates the SV's magic. - -This doesn't cause a problem unless the match string is temporary, in -which case the only other reference keeping it alive will be removed -by the FREETMPs during the croak. - -The fix is to make sure an extra ref to the sv is held. - -Signed-off-by: Petr Písař ---- - regexec.c | 4 ++++ - regexp.h | 1 + - t/re/pat_re_eval.t | 16 +++++++++++++++- - 3 files changed, 20 insertions(+), 1 deletion(-) - -diff --git a/regexec.c b/regexec.c -index e4ec07e89e..c390bff72e 100644 ---- a/regexec.c -+++ b/regexec.c -@@ -10233,6 +10233,7 @@ S_setup_eval_state(pTHX_ regmatch_info *const reginfo) - regmatch_info_aux_eval *eval_state = reginfo->info_aux_eval; - - eval_state->rex = rex; -+ eval_state->sv = reginfo->sv; - - if (reginfo->sv) { - /* Make $_ available to executed code. */ -@@ -10240,6 +10241,8 @@ S_setup_eval_state(pTHX_ regmatch_info *const reginfo) - SAVE_DEFSV; - DEFSV_set(reginfo->sv); - } -+ /* will be dec'd by S_cleanup_regmatch_info_aux */ -+ SvREFCNT_inc_NN(reginfo->sv); - - if (!(mg = mg_find_mglob(reginfo->sv))) { - /* prepare for quick setting of pos */ -@@ -10331,6 +10334,7 @@ S_cleanup_regmatch_info_aux(pTHX_ void *arg) - } - - PL_curpm = eval_state->curpm; -+ SvREFCNT_dec(eval_state->sv); - } - - PL_regmatch_state = aux->old_regmatch_state; -diff --git a/regexp.h b/regexp.h -index 0f35205e1a..ccbc64a009 100644 ---- a/regexp.h -+++ b/regexp.h -@@ -658,6 +658,7 @@ typedef struct { - STRLEN sublen; /* saved sublen field from rex */ - STRLEN suboffset; /* saved suboffset field from rex */ - STRLEN subcoffset; /* saved subcoffset field from rex */ -+ SV *sv; /* $_ during (?{}) */ - MAGIC *pos_magic; /* pos() magic attached to $_ */ - SSize_t pos; /* the original value of pos() in pos_magic */ - U8 pos_flags; /* flags to be restored; currently only MGf_BYTES*/ -diff --git a/t/re/pat_re_eval.t b/t/re/pat_re_eval.t -index 8325451377..696b6a3fb5 100644 ---- a/t/re/pat_re_eval.t -+++ b/t/re/pat_re_eval.t -@@ -23,7 +23,7 @@ BEGIN { - - our @global; - --plan tests => 504; # Update this when adding/deleting tests. -+plan tests => 506; # Update this when adding/deleting tests. - - run_tests() unless caller; - -@@ -1317,6 +1317,20 @@ sub run_tests { - ok "ABC" =~ /^ $runtime_re (?(?{ 0; })xy|BC) $/x, 'RT #133687 yes|no'; - } - -+ # RT #134208 -+ # when the string being matched was an SvTEMP and the re_eval died, -+ # the SV's magic was being restored after the SV was freed. -+ # Give ASan something to play with. -+ -+ { -+ my $a; -+ no warnings 'uninitialized'; -+ eval { "$a $1" =~ /(?{ die })/ }; -+ pass("SvTEMP 1"); -+ eval { sub { " " }->() =~ /(?{ die })/ }; -+ pass("SvTEMP 2"); -+ } -+ - } # End of sub run_tests - - 1; --- -2.20.1 - diff --git a/perl-5.31.3-PATCH-perl-134133-read-beyond-end-of-buffer.patch b/perl-5.31.3-PATCH-perl-134133-read-beyond-end-of-buffer.patch deleted file mode 100644 index bf2aba6..0000000 --- a/perl-5.31.3-PATCH-perl-134133-read-beyond-end-of-buffer.patch +++ /dev/null @@ -1,31 +0,0 @@ -From c6f37d61adb39a6d7764b1bcb6bb67accb22a0a0 Mon Sep 17 00:00:00 2001 -From: Karl Williamson -Date: Fri, 24 May 2019 09:01:46 -0600 -Subject: [PATCH] PATCH: [perl #134133] read beyond end of buffer -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -The code was using the wrong limit variable. - -Signed-off-by: Petr Písař ---- - regcomp.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/regcomp.c b/regcomp.c -index d61fd434fe..b2cc6672cb 100644 ---- a/regcomp.c -+++ b/regcomp.c -@@ -22946,7 +22946,7 @@ Perl_parse_uniprop_string(pTHX_ - /* Certain properties whose values are numeric need special handling. - * They may optionally be prefixed by 'is'. Ignore that prefix for the - * purposes of checking if this is one of those properties */ -- if (memBEGINPs(lookup_name, name_len, "is")) { -+ if (memBEGINPs(lookup_name, j, "is")) { - lookup_offset = 2; - } - --- -2.21.0 - diff --git a/perl-5.31.3-PATCH-perl-134325-Heap-buffer-overflow.patch b/perl-5.31.3-PATCH-perl-134325-Heap-buffer-overflow.patch deleted file mode 100644 index 7f1da16..0000000 Binary files a/perl-5.31.3-PATCH-perl-134325-Heap-buffer-overflow.patch and /dev/null differ diff --git a/perl-5.31.3-perl-134390-don-t-leak-the-SV-we-just-created-on-an-.patch b/perl-5.31.3-perl-134390-don-t-leak-the-SV-we-just-created-on-an-.patch deleted file mode 100644 index 2790944..0000000 --- a/perl-5.31.3-perl-134390-don-t-leak-the-SV-we-just-created-on-an-.patch +++ /dev/null @@ -1,29 +0,0 @@ -From 05a03c0da6f3694904885fa1629a6e35e75d2875 Mon Sep 17 00:00:00 2001 -From: Tony Cook -Date: Mon, 2 Sep 2019 15:35:36 +1000 -Subject: [PATCH] (perl #134390) don't leak the SV we just created on an early - return -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Signed-off-by: Petr Písař ---- - regexec.c | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/regexec.c b/regexec.c -index c390bff72e..97ea458a20 100644 ---- a/regexec.c -+++ b/regexec.c -@@ -10405,6 +10405,7 @@ S_to_byte_substr(pTHX_ regexp *prog) - && !prog->substrs->data[i].substr) { - SV* sv = newSVsv(prog->substrs->data[i].utf8_substr); - if (! sv_utf8_downgrade(sv, TRUE)) { -+ SvREFCNT_dec_NN(sv); - return FALSE; - } - if (SvVALID(prog->substrs->data[i].utf8_substr)) { --- -2.21.0 - diff --git a/perl.spec b/perl.spec index 8a48ec7..fd7fb41 100644 --- a/perl.spec +++ b/perl.spec @@ -1,4 +1,4 @@ -%global perl_version 5.30.0 +%global perl_version 5.30.1 %global perl_epoch 4 %global perl_arch_stem -thread-multi %global perl_archname %{_arch}-%{_os}%{perl_arch_stem} @@ -85,7 +85,7 @@ License: GPL+ or Artistic Epoch: %{perl_epoch} Version: %{perl_version} # release number must be even higher, because dual-lived modules will be broken otherwise -Release: 446%{?dist} +Release: 447%{?dist} Summary: Practical Extraction and Report Language Url: https://www.perl.org/ Source0: https://www.cpan.org/src/5.0/perl-%{perl_version}.tar.xz @@ -149,10 +149,6 @@ Patch12: perl-5.27.8-hints-linux-Add-lphtread-to-lddlflags.patch # Pass the correct CFLAGS to dtrace Patch13: perl-5.28.0-Pass-CFLAGS-to-dtrace.patch -# Fix an out-of-buffer read while parsing a Unicode property name, RT#134134, -# fixed after 5.31.0 -Patch14: perl-5.31.0-PATCH-perl-134134-read-beyond-end-of-buffer.patch - # Do not panic when outputting a warning, RT#134059, fixed after 5.31.0 Patch15: perl-5.31.0-PATCH-perl-134059-panic-outputting-a-warning.patch @@ -175,12 +171,8 @@ Patch23: perl-5.31.0-perl-122112-remove-some-interfering-debug-output.pat # Fix a crash with a negative precision in sprintf function, RT#134008, # fixed after 5.31.0 -Patch24: perl-5.31.0-134008-More-carefully-ignore-negative-precision-in-s.patch Patch25: perl-5.31.0-perl-134008-an-alternative-test.patch -# Fix an erroneous assertion on OP_SCALAR, RT#134048, fixed after 5.31.0 -Patch26: perl-5.31.0-perl-134048-prevent-an-erroneous-assertion-on-OP_SCA.patch - # Prevent from wrapping a width in a numeric format string, RT#133913, # fixed after 5.31.0 Patch27: perl-5.31.0-perl-133913-limit-numeric-format-results-to-INT_MAX.patch @@ -189,25 +181,12 @@ Patch27: perl-5.31.0-perl-133913-limit-numeric-format-results-to-INT_MAX. # fixed after 5.31.0 Patch28: perl-5.31.0-perl-134072-allow-foo-bar-to-work-in-main.patch -# Improve retrieving a scalar value of a variable modified in a signal -# handler, RT#134035, fixed after 5.31.0 -Patch29: perl-5.31.0-perl-134035-ensure-sv_gets-handles-a-signal-handler-.patch - # Fix changing packet destination sent from a UDP IO::Socket object, # RT#133936, fixed after 5.31.0 Patch30: perl-5.31.0-perl-133936-ensure-TO-is-honoured-for-UDP-sock-send.patch Patch31: perl-5.31.0-perl-133936-document-differences-between-IO-Socket-a.patch Patch32: perl-5.31.0-perl-133936-make-send-a-bit-saner.patch -# Fix a stack underflow in readline() if passed an empty array as an argument, -# RT133989, fixed after 5.31.0 -Patch33: perl-5.31.0-perl-133989-scalar-the-argument-to-readline-if-any.patch - -# Fix setting supplementar group IDs, RT#134169, fixed after 5.31.0 -Patch34: perl-5.31.0-perl-134169-mg.c-reset-endptr-after-use.patch -Patch35: perl-5.31.0-Add-test-for-perl-134169.patch -Patch36: perl-5.31.0-Manuel-Mausz-is-now-a-perl-author.patch - # Fix %%{^CAPTURE_ALL} to be an alias for %%- variable, RT#131867, # fixed after 5.31.0 Patch37: perl-5.31.0-CAPTURE_ALL-was-intended-to-be-an-alias-for-make-it-.patch @@ -239,9 +218,6 @@ Patch45: perl-5.31.2-perl-134291-propagate-non-PVs-in-in-bare-die.patch # fixed after 5.31.2 Patch46: perl-5.31.2-include-a-trailing-0-in-SVs-holding-trie-info.patch -# Fix a use after free in /(?{...})/, RT#134208, fixed after 5.31.2 -Patch47: perl-5.31.2-avoid-use-after-free-in.patch - # Fix a use after free in debugging output of a collation, # in upstream after 5.31.2 Patch48: perl-5.31.2-locale.c-Stop-Coverity-warning.patch @@ -267,18 +243,10 @@ Patch53: perl-5.31.2-Run-tests-in-ext-File-Find-t-in-series.patch # fixed after 5.31.3 Patch54: perl-5.31.3-regcomp.c-Fix-wrong-limit-test.patch -# Fix a buffer overread when parsing a Unicode property while compiling -# a regular expression, RT#134133, fixed after 5.31.3 -Patch55: perl-5.31.3-PATCH-perl-134133-read-beyond-end-of-buffer.patch - # Do not interpret 0x and 0b prefixes when numifying strings, RT#134230, # fixed after 5.31.3 Patch56: perl-5.31.3-perl-134230-don-t-interpret-0x-0b-when-numifying-str.patch -# Fix a buffer overread when compiling a regular expression with many escapes, -# RT#134325, fixed after 5.31.3 -Patch57: perl-5.31.3-PATCH-perl-134325-Heap-buffer-overflow.patch - # Fix a buffer overflow when compiling a regular expression with many # branches, RT#134329, fixed after 5.31.3 # This is a binary patch and requires git. @@ -288,10 +256,6 @@ Patch58: perl-5.30.0-PATCH-perl-134329-Use-after-free-in-regcomp.c.patch # fixed after 5.31.3 Patch59: perl-5.31.3-Supply-missing-right-brace-in-regex-example.patch -# Fix a memory leak when matching a UTF-8 regular expression, RT#134390, -# fixed after 5.31.3 -Patch60: perl-5.31.3-perl-134390-don-t-leak-the-SV-we-just-created-on-an-.patch - # Fix a detection for futimes, RT#134432, fixed after 5.31.3 Patch61: perl-5.31.3-Configure-Include-stdlib.h-in-futimes-check.patch Patch62: perl-5.31.3-Florian-Weimer-is-now-a-perl-author.patch @@ -355,7 +319,7 @@ BuildRequires: rsyslog # compat macro needed for rebuild -%global perl_compat perl(:MODULE_COMPAT_5.30.0) +%global perl_compat perl(:MODULE_COMPAT_5.30.1) Requires: %perl_compat Requires: perl-interpreter%{?_isa} = %{perl_epoch}:%{perl_version}-%{release} @@ -507,6 +471,7 @@ Summary: The libraries for the perl run-time License: (GPL+ or Artistic) and HSRL and MIT and UCD # Compat provides Provides: %perl_compat +Provides: perl(:MODULE_COMPAT_5.30.0) # Interpreter version to fulfil required genersted from "require 5.006;" Provides: perl(:VERSION) = %{perl_version} # Integeres are 64-bit on all platforms @@ -1954,7 +1919,7 @@ encoder/decoder. These encoding methods are specified in RFC 2045 - MIME Summary: What modules are shipped with versions of perl License: GPL+ or Artistic Epoch: 1 -Version: 5.20190522 +Version: 5.20191110 Requires: %perl_compat Requires: perl(List::Util) Requires: perl(version) >= 0.88 @@ -1972,7 +1937,7 @@ are shipped with each version of perl. Summary: Tool for listing modules shipped with perl License: GPL+ or Artistic Epoch: 1 -Version: 5.20190522 +Version: 5.20191110 Requires: %perl_compat Requires: perl(feature) Requires: perl(version) >= 0.88 @@ -2833,7 +2798,6 @@ Perl extension for Version Objects %patch11 -p1 %patch12 -p1 %patch13 -p1 -%patch14 -p1 %patch15 -p1 %patch16 -p1 %patch17 -p1 @@ -2843,19 +2807,12 @@ Perl extension for Version Objects %patch21 -p1 %patch22 -p1 %patch23 -p1 -%patch24 -p1 %patch25 -p1 -%patch26 -p1 %patch27 -p1 %patch28 -p1 -%patch29 -p1 %patch30 -p1 %patch31 -p1 %patch32 -p1 -%patch33 -p1 -%patch34 -p1 -%patch35 -p1 -%patch36 -p1 %patch37 -p1 %patch38 -p1 %patch39 -p1 @@ -2866,7 +2823,6 @@ Perl extension for Version Objects %patch44 -p1 %patch45 -p1 %patch46 -p1 -%patch47 -p1 %patch48 -p1 %patch49 -p1 %patch50 -p1 @@ -2874,9 +2830,7 @@ Perl extension for Version Objects %patch52 -p1 %patch53 -p1 %patch54 -p1 -%patch55 -p1 %patch56 -p1 -%patch57 -p1 # PATCH-perl-134329-Use-after-free-in-regcomp.c.patch is a binary patch git init-db . git config --replace-all gc.auto 0 # Prevent from racing with "rm -rf .git" @@ -2887,7 +2841,6 @@ git commit --message 'Import' git am < %{PATCH58} rm -rf .git # Perl tests examine a git repository %patch59 -p1 -%patch60 -p1 %patch61 -p1 %patch62 -p1 %patch200 -p1 @@ -2910,7 +2863,6 @@ perl -x patchlevel.h \ 'Fedora Patch11: Replace EU::MakeMaker dependency with EU::MM::Utils in IPC::Cmd (bug #1129443)' \ 'Fedora Patch12: Link XS modules to pthread library to fix linking with -z defs' \ 'Fedora Patch13: Pass the correct CFLAGS to dtrace' \ - 'Fedora Patch14: Fix an out-of-buffer read while parsing a Unicode property name (RT#134134)' \ 'Fedora Patch15: Do not panic when outputting a warning (RT#134059)' \ 'Fedora Patch16: Fix memory handling when parsing string literals' \ 'Fedora Patch17: Fix an undefined behavior in shifting IV variables' \ @@ -2920,19 +2872,12 @@ perl -x patchlevel.h \ 'Fedora Patch21: Fix a crash in SIGALARM handler when waiting on a child process to be closed (RT#122112)' \ 'Fedora Patch22: Fix a crash in SIGALARM handler when waiting on a child process to be closed (RT#122112)' \ 'Fedora Patch23: Fix a crash in SIGALARM handler when waiting on a child process to be closed (RT#122112)' \ - 'Fedora Patch24: Fix a crash with a negative precision in sprintf function (RT#134008)' \ 'Fedora Patch25: Fix a crash with a negative precision in sprintf function (RT#134008)' \ - 'Fedora Patch26: Fix an erroneous assertion on OP_SCALAR (RT#134048)' \ 'Fedora Patch27: Prevent from wrapping a width in a numeric format string (RT#133913)' \ 'Fedora Patch28: Fix subroutine protypes to track reference aliases (RT#134072)' \ - 'Fedora Patch29: Improve retrieving a scalar value of a variable modified in a signal handler (RT#134035)' \ 'Fedora Patch30: Fix changing packet destination sent from a UDP IO::Socket object (RT#133936)' \ 'Fedora Patch31: Fix changing packet destination sent from a UDP IO::Socket object (RT#133936)' \ 'Fedora Patch32: Fix changing packet destination sent from a UDP IO::Socket object (RT#133936)' \ - 'Fedora Patch33: Fix a stack underflow in readline() if passed an empty array as an argument (#RT133989)' \ - 'Fedora Patch34: Fix setting supplementar group IDs (RT#134169)' \ - 'Fedora Patch35: Fix setting supplementar group IDs (RT#134169)' \ - 'Fedora Patch36: Fix setting supplementar group IDs (RT#134169)' \ 'Fedora Patch37: Fix %%{^CAPTURE_ALL} to be an alias for %%- variable (RT#131867)' \ 'Fedora Patch38: Fix %%{^CAPTURE} value when used after @{^CAPTURE} (RT#134193)' \ 'Fedora Patch39: Fix %%{^CAPTURE} value when used after @{^CAPTURE} (RT#134193)' \ @@ -2943,7 +2888,6 @@ perl -x patchlevel.h \ 'Fedora Patch44: Preserve append mode when opening anonymous files (RT#134221)' \ 'Fedora Patch45: Fix propagating non-string variables in an exception value (RT#134291)' \ 'Fedora Patch46: Include trailing zero in scalars holding trie data (RT#134207)' \ - 'Fedora Patch47: Fix a use after free in /(?{...})/ (RT#134208)' \ 'Fedora Patch48: Fix a use after free in debugging output of a collation' \ 'Fedora Patch49: Fix a NULL pointer dereference in PerlIOVia_pushed()' \ 'Fedora Patch50: Fix a crash when setting $@ on unwinding a call stack (RT#134266)' \ @@ -2951,12 +2895,9 @@ perl -x patchlevel.h \ 'Fedora Patch52: Fix a documentation about a future API change' \ 'Fedora Patch53: Do not run File-Find tests in parallel' \ 'Fedora Patch54: Fix parsing a Unicode property name when compiling a regular expression' \ - 'Fedora Patch55: Fix a buffer overread when parsing a Unicode property while compiling a regular expression (RT#134133)' \ 'Fedora Patch56: Do not interpret 0x and 0b prefixes when numifying strings (RT#134230)' \ - 'Fedora Patch57: Fix a buffer overread when compiling a regular expression with many escapes (RT#134325)' \ 'Fedora Patch58: Fix a buffer overflow when compiling a regular expression with many branches (RT#134329)' \ 'Fedora Patch59: Correct a misspelling in perlrebackslash documentation (RT#134395)' \ - 'Fedora Patch60: Fix a memory leak when matching a UTF-8 regular expression (RT#134390)' \ 'Fedora Patch61: Fix a detection for futimes (RT#134432)' \ 'Fedora Patch62: Fix a detection for futimes (RT#134432)' \ 'Fedora Patch200: Link XS modules to libperl.so with EU::CBuilder on Linux' \ @@ -5204,6 +5145,10 @@ popd # Old changelog entries are preserved in CVS. %changelog +* Mon Nov 11 2019 Jitka Plesnikova - 4:5.30.1-447 +- 5.30.1 bump (see + for release notes) + * Wed Sep 11 2019 Petr Pisar - 4:5.30.0-446 - Fix a memory leak when matching a UTF-8 regular expression (RT#134390) - Fix a detection for futimes (RT#134432) diff --git a/sources b/sources index 73122ce..d7a8236 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (perl-5.30.0.tar.xz) = 68a295eccd64debd9d6a10f0d5577f872a19ad8c2d702798f6b0f45b8c3af6ab3230768056e2131e9e2e2506d1035b27cfd627c845e32263fe448649c4b98ae9 +SHA512 (perl-5.30.1.tar.xz) = 8f3339efdcd1bb58fa58a90042181bef86bb09e4598c737e446ed43b56d2ab23d67eced5e36fb08fc61e076acfdb572a12e46a1277f5299a3f412054df0b88bf