Branch: refs/heads/smoke-me/tonyc/21661-no-warn-ckdead
Home: https://github.com/Perl/perl5
Commit: 30f39e5b9b181d9a7897f946ba8f8dbe91b31d4d
https://github.com/Perl/perl5/commit/30f39e5b9b181d9a7897f946ba8f8dbe91b31d4d
Author: Tony Cook <[email protected]>
Date: 2024-02-22 (Thu, 22 Feb 2024)
Changed paths:
M t/re/pat.t
Log Message:
-----------
add tests for #21661
Commit: 13d5ca7ee2d8a60bbe4d836cc7642499932625d2
https://github.com/Perl/perl5/commit/13d5ca7ee2d8a60bbe4d836cc7642499932625d2
Author: Tony Cook <[email protected]>
Date: 2024-02-22 (Thu, 22 Feb 2024)
Changed paths:
M regcomp.c
M regcomp_internal.h
Log Message:
-----------
safer cleanup when failing to compile regexps
Prior to this commit when producing a warning the regexp compiler
would check if the warning category was marked as FATAL, and if it was
it would add clean up to the save stack to release buffers used during
compilation and to release the working REGEXP SV.
This causes two type of problems:
- if an error was already queued, Perl_ck_warner() returns even if
the warning is fatal, this meant that the normal clean up code
Perl_re_op_compile() would also run, resulting in a double free
of the buffers.
- without fatal warnings, if a $SIG{__WARN__} handler died, the
buffers and the working REGEXP SV would leak.
Avoid this by using SAVEDESTRUCTOR_X() to release the memory and
optionally the SV at the end of scope.
Fixes #21661
Commit: 1d8b2c654a9e60c4d8c64eb46056bc52001d0575
https://github.com/Perl/perl5/commit/1d8b2c654a9e60c4d8c64eb46056bc52001d0575
Author: Tony Cook <[email protected]>
Date: 2024-02-22 (Thu, 22 Feb 2024)
Changed paths:
M regcomp_internal.h
Log Message:
-----------
regcomp_internal.h: simplify vFAIL*() macros
These can be simpler, and since we allow use of __VA_ARGS__
we can consolidate Simple_vFAIL[1-4]() into Simple_vFAILn()
Commit: 2016cd18977423d9e66d50214e319a6ee6702298
https://github.com/Perl/perl5/commit/2016cd18977423d9e66d50214e319a6ee6702298
Author: Tony Cook <[email protected]>
Date: 2024-02-22 (Thu, 22 Feb 2024)
Changed paths:
M regcomp_internal.h
Log Message:
-----------
regcomp_internal.h: removed unused PREPARE_TO_DIE
We are now always prepared for death.
Compare: https://github.com/Perl/perl5/compare/30f39e5b9b18%5E...2016cd189774
To unsubscribe from these emails, change your notification settings at
https://github.com/Perl/perl5/settings/notifications