diff --git a/NEWS b/NEWS index 0961ddaa9fbf..71f67c39665f 100644 --- a/NEWS +++ b/NEWS @@ -30,6 +30,8 @@ PHP NEWS string interpolation). (timwolla) . Fixed bug GH-22373 (AST pretty-printing drops meaningful parentheses surrounding property access). (timwolla) + . Fixed GH-22422 (zend_arena layout mismatch leaked memory in separately + built extensions under AddressSanitizer). (iliaal) - BCMath: . Added NUL-byte validation to BCMath functions. (jorgsowa) diff --git a/configure.ac b/configure.ac index b61b909b67b7..9014869fb94e 100644 --- a/configure.ac +++ b/configure.ac @@ -1539,8 +1539,10 @@ AS_VAR_IF([PHP_ADDRESS_SANITIZER], [yes], ]))]) AX_CHECK_COMPILE_FLAG([-fsanitize=address], [ - CFLAGS="$CFLAGS -fsanitize=address -DZEND_TRACK_ARENA_ALLOC" - CXXFLAGS="$CXXFLAGS -fsanitize=address -DZEND_TRACK_ARENA_ALLOC" + CFLAGS="$CFLAGS -fsanitize=address" + CXXFLAGS="$CXXFLAGS -fsanitize=address" + AC_DEFINE([ZEND_TRACK_ARENA_ALLOC], [1], + [Whether to track arena allocations individually for AddressSanitizer.]) ], [AC_MSG_ERROR([AddressSanitizer is not available])]) ])