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 <t...@develop-help.com> 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 <t...@develop-help.com> 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 <t...@develop-help.com> 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 <t...@develop-help.com> 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