| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
(cherry picked from commit 569e5e25146cd0c2e2edeac803e3a6980ea8cd57)
|
|
|
|
| |
(cherry picked from commit 3f2bf9069a14cfe5db8009481d207cb24492de4c)
|
|
|
|
| |
(cherry picked from commit 52208a2c63d49fa37f5ba710f682ff427c74b4a4)
|
|
|
|
| |
(cherry picked from commit 7b99455fe0a347ad42afab1cd66997f231344818)
|
|
|
|
| |
(cherry picked from commit 2fc637b5ccae74ab098be6d1dabc016562bda21d)
|
|
|
|
| |
(cherry picked from commit 35f4fa983ad813f733de669baa61ba6547e239c4)
|
|
|
|
| |
(manually cherry picked from commit 056eb89f46e3e7cf0605f0c79dc8dcae1508f201)
|
|
|
|
| |
(cherry picked from commit 45ccb3081f160ba7c7492e0d3b19180989efd342)
|
|
|
|
|
|
|
|
|
| |
..and Porting/corelist.pl warns about it
This is a re-application of commit cdac9b8288885
after the change was reversed a month later.
(cherry picked from commit 45d112b438bda9b5b1d59789449ba051a6dcf687)
|
|
|
|
| |
(manually cherry picked from commit 1e6ddea0fe7a351ec1130ce2f72d08cd861c92b0)
|
| |
|
|
|
|
| |
(cherry picked from commit 294f60cbf8e3f2ff407c4e11c89b51678d415a47)
|
|
|
|
| |
Spotted by Tomasz Konojacki: 81295a42ad didn't get back-ported.
|
|
|
|
| |
(cherry picked from commit f2d0b37bf1bbfea76c6a0d5ea0fa7c72fc8a1c06)
|
| |
|
| |
|
|
|
|
| |
(cherry picked from commit ddf1101c515d0377bdc9a4fb7433bce54bdabc1e)
|
| |
|
|
|
|
| |
(Includes Porting\corelist-perldelta.pl for the modules)
|
|
|
|
| |
(Generated by Porting\corelist.pl)
|
| |
|
|
|
|
| |
(cherry picked from commit 66c65f79d3ac3abda04a869359d6f034ab2c32aa)
|
|
|
|
| |
(cherry picked from commit 159f10880013e565e0bc0f6347e036c8a947c267)
|
|
|
|
| |
(cherry picked from commit f8e911a1fee93e2ec18731a39a30b6c880c64951)
|
|
|
|
| |
(cherry picked from commit 05a3a9e270acbdb476e3ca1a8ef39a7eaf374406)
|
|
|
|
| |
(cherry picked from commit 48a788454f1719093d08e80bbb70723ae345163a)
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The current "no warranty" text warning against the use of Safe or
Opcode for "security purposes" is somewhat ambiguous. These modules
are not effective sandboxing mechanisms for evaluating untrusted
perl code and should not be used in that manner.
Safe and Opcode are, at best, hardening measures that could be used
in combination with operating system level sandboxing of the perl
interpreter.
(cherry picked from commit c150e7c040454515c5acfb8416f2acdb2c0a2bb4)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This fixes GH #18341
The Perl wrapper for getenv() was changed in 5.32 to allocate memory to
squirrel safely away the result of the wrapped getenv() call. It does
this while in a critical section so as to make sure another thread can't
interrupt it and destroy it.
Unfortunately, when Perl is compiled for debugging memory problems and
has PERL_MEM_LOG enabled, that allocation causes a recursive call to
getenv() for the purpose of checking an environment variable to see how
to log that allocation. And hence it deadlocks trying to enter the
critical section.
There are various solutions. One is to use or emulate a general semaphore
instead of a binary one. This is effectively what
PL_lc_numeric_mutex_depth does for another mutex, and the code for that
could be used as a template.
But given that this is an extreme edge case which requires Perl to be
specially compiled to enable this feature which is used only for
debugging, a much simpler, if less safe if it were to ever be used in
production, solution should suffice. Tony Cook suggested just avoiding
the wrapper for this particular purpose.
(cherry picked from commit 0cc28fe31b0d416e9c67ecd18b8f38c5833a455a)
|
|
|
|
| |
(manually cherry picked from commit a473ef8bc0d67b85bc4982944d05f235fc906aae)
|
|
|
|
| |
(manually cherry picked from commit e6b76f1d3a551e2910f721e12bdf9cff1bf8a87a)
|
|
|
|
| |
(manually cherry picked from commit b795a7efaa3561128a78aada8fefb5d743766553)
|
|
|
|
| |
(cherry picked from commit df667af6bf53dde5bcaf2840438bccb3cc376add)
|
|
|
|
|
|
| |
Changes for 39f7bd8a2f and f4941eebb5
(manually cherry picked from commit a30fca8108eecadd83c1c83a0af8faaf54465fa0)
|
|
|
|
|
|
| |
See commit 8ffcbbbe4a4411bb0971e61a39fa2608a4ef5145
(cherry picked from commit c5a9828441a753bc549b18fb011db0bd25fe54ee)
|
|
|
|
|
|
|
|
| |
Check that porting/copyright.t is passing when run with --now:
../perl -I../lib porting/copyright.t --now
(cherry picked from commit 781d8b49760b7a212bb93c6a88cb71e9db9e1d71)
|
|
|
|
| |
(cherry picked from commit 0287c5eaf3a95e7fe34ada76c475514047a1ea05)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This code would try to constant fold an op tree like
relop
+- null
+- constant
which would underflow the stack, potentially crashing perl.
This is intended as a quick fix rather than as a complete
solution.
Fixes #18380
(cherry picked from commit 08be3ef7f1190d94279ad0b3e13519ac8dc3b0ec)
|
|
|
|
| |
(cherry picked from commit 1cd5f0d5fa70621757c327e1f6ff04bcb220e0a1)
|
|
|
|
|
|
|
|
|
|
| |
A number of system libraries no longer exist as actual files, even
though dlopen will pretend they do, so now we fall back to dlopen if
a library file can not be found.
(cherry picked from commit d296ead16762852ec34d173616a271c856711f77)
(with a manual tweak to the $VERSION since maint is behind blead)
|
|
|
|
| |
(cherry picked from commit 64a5950af609117d2098f7616334aff77df9ed63)
|
|
|
|
|
|
|
|
|
|
|
| |
It was disallowed because:
- it was breaking things (GH #14638)
- at the time, no-one had the tuits and knowledge to select non-buggy
semantics and implement them.
(cherry picked from commit 55afc78396d86da97ab07c25295b00c9a300f081)
|
|
|
|
| |
(cherry picked from commit 3c43dd64639f7fbccb6ff32f0e82d007d2cde710)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
this also simplifies the flagging for these assertions, since this
error is now the only thing using in_lookhead and in_lookbehind they
can be combined into a single in_lookaround.
Rather than conditional increment/decrement as we recurse into S_reg
I simply save the value of in_lookaround and restore it before
returning. Some unsuccessful or restart paths don't do the restore,
but they either result in a croak(), or a restart which reinitialises
in_lookaround anyway.
Also added tests to ensure that all the different zero-width assertions
with content trigger the error.
(cherry picked from commit 80f44cf4982e395989f886220e05dd2071bb205a)
|
|
|
|
| |
(cherry picked from commit a2f2a4e3143a7f85d874450cced74b7399fd6977)
|
|
|
|
|
|
|
|
| |
in some cases we want to group a test that shouldn't croak with the
croak tests, in particular to catch regressions when we've
introduced a croak.
(cherry picked from commit dd4888cbd881ebd071701fbfef45812a8773a404)
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fix #18063
During global destruction make sure we preserve
the string by using mortalcopy.
This is an update on 8c86f0238ecb5f32c2e7fba36e3edfdb54069068
change which avoided sv_mortalcopy in favor of sv_2mortal.
(cherry picked from commit 042abef72d40ab7ff39127e2afae6e34dfc66404)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
GH #16685
In
@a = ($x, undef, undef) = (1))
@a should have 3 elements. v5.25.6-79-gb09ed995ad broke this and was
returning one element.
The fix is simple: that previous commit made it so that elements were
pushed back onto the stack only if they weren't immortal, so
&PL_sv_undef was getting skipped. Make it so they always are.
(cherry picked from commit 282d9dfeb4cea3c2d0335ba78faa3a9db931f1ec)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
GH #17816
This code:
my $x = 1;
print (($x, undef) = (2 => $x));
was printing "22" when it should have been printing "21".
An optimisation skips the 'common values on both sides' test
when the LHS of an assign only contains a single var; as the example
above shows, this is not sufficient.
This was broken by v5.23.1-202-g808ce55782
This commit fixes it by counting undef's on the LHS towards the var
count if they don't appear first.
(cherry picked from commit 5b354d2a8a6fea46c62048464c6722560cb1c907)
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add a new perlsecpolicy POD file with detailed descriptions
of the security team's vulnerability remediation workflow and
the criteria used to distinguish security issues from other
types of bugs.
This also switches the team's public contact address to
perl-security@perl.org, and updates the security contact
information shown in github's issue interface.
(cherry picked from commit b135fd4a1ca0074e0baef5764530103cc97cc4fe)
|
|
|
|
|
|
| |
This change documents the previous behavior of the range operator with magic string increment in Perl 5.30 and below - the change was introduced in commit d1bc97feec from GitHub #16770 (RT133695).
(cherry picked from commit f4941eebb5185b70b980fcfea9f7b02f377f1f70)
|