ZendPHP Fixes

  • PHP version 8.3.7, 8.2.19 fixes
    • intl extension build fix. Community change required c++17 to be able to build. ZendPHP patches such irrelevant requirement for older OS versions.

Community Fixes

  • PHP version 8.3.7 fixes

    • Core

      • Fixed zend_call_stack build with Linux/uclibc-ng without thread support.
      • Fixed bug GH-13772: Invalid execute_data->opline pointers in observer fcall handlers when JIT is enabled.
      • Fixed bug GH-13931: Applying zero offset to null pointer in Zend/zend_opcode.c.
      • Fixed bug GH-13942: Align the behavior of zend-max-execution-timers with other timeout implementations.
      • Fixed bug GH-14003: Broken cleanup of unfinished calls with callable convert parameters.
      • Fixed bug GH-14013: Erroneous dnl appended in configure.
      • Fixed bug GH-10232: If autoloading occurs during constant resolution filename and lineno are identified incorrectly.
      • Fixed bug GH-13727: Missing void keyword.
    • Fibers

      • Fixed bug GH-13903: ASAN false positive underflow when executing copy().
    • Fileinfo

      • Fixed bug GH-13795: Test failing in ext/fileinfo/tests/bug78987.phpt on big-endian PPC.
    • FPM

      • Fixed bug GH-13563: Setting bool values via env in FPM config fails.
    • Intl

      • Fixed build for icu 74 and onwards.
    • MySQLnd

      • Fix shift out of bounds on 32-bit non-fast-path platforms.
    • Opcache

      • Fixed bug GH-13433: Segmentation Fault in zend_class_init_statics when using opcache.preload.
      • Fixed incorrect assumptions across compilation units for static calls.
    • OpenSSL

      • Fixed bug GH-10495: feof on OpenSSL stream hangs indefinitely.
    • PDO SQLite

      • Fix GH-13984: Buffer size is now checked before memcmp.
      • Fix GH-13998: Manage refcount of agg_context->val correctly.
    • Phar

      • Fixed bug GH-13836: Renaming a file in a Phar to an already existing filename causes a NULL pointer dereference.
      • Fixed bug GH-13833: Applying zero offset to null pointer in zend_hash.c.
      • Fix potential NULL pointer dereference before calling EVP_SignInit.
    • PHPDBG

      • Fixed bug GH-13827: Null pointer access of type zval in phpdbg_frame.
    • Posix

      • Fix usage of reentrant functions in ext/posix.
    • Session

      • Fixed bug GH-13856: Member access within null pointer of type ps_files in ext/session/mod_files.c.
      • Fixed bug GH-13891: memleak and segfault when using ini_set with session.trans_sid_hosts.
      • Fixed buffer _read/_write size limit on windows for the file mode.
    • Streams

      • Fixed file_get_contents() on Windows fails with "errno=22 Invalid argument".
      • Fixed bug GH-13264: Part 1 - Memory leak on stream filter failure.
      • Fixed bug GH-13860: Incorrect PHP_STREAM_OPTION_CHECK_LIVENESS case in ext/openssl/xp_ssl.c - causing use of dead socket.
      • Fixed bug GH-11678: Build fails on musl 1.2.4 - lfs64.
    • Treewide

      • Fix gcc-14 Wcalloc-transposed-args warnings.
  • PHP version 8.2.19 fixes

    • Core

      • Fixed bug GH-13772: Invalid execute_data->opline pointers in observer fcall handlers when JIT is enabled.
      • Fixed bug GH-13931: Applying zero offset to null pointer in Zend/zend_opcode.c.
      • Fixed bug GH-13942: Align the behavior of zend-max-execution-timers with other timeout implementations.
      • Fixed bug GH-14003: Broken cleanup of unfinished calls with callable convert parameters.
      • Fixed bug GH-14013: Erroneous dnl appended in configure.
      • Fixed bug GH-10232: If autoloading occurs during constant resolution filename and lineno are identified incorrectly.
      • Fixed bug GH-13727: Missing void keyword.
    • Fibers

      • Fixed bug GH-13903: ASAN false positive underflow when executing copy().
    • FPM

      • Fixed bug GH-13563: Setting bool values via env in FPM config fails.
    • Intl

      • Fixed build for icu 74 and onwards.
    • MySQLnd

      • Fix shift out of bounds on 32-bit non-fast-path platforms.
    • Opcache

      • Fixed incorrect assumptions across compilation units for static calls.
    • OpenSSL

      • Fixed bug GH-10495: feof on OpenSSL stream hangs indefinitely.
    • PDO SQLite

      • Fix GH-13984: Buffer size is now checked before memcmp.
      • Fix GH-13998: Manage refcount of agg_context->val correctly.
    • Phar

      • Fixed bug GH-13836: Renaming a file in a Phar to an already existing filename causes a NULL pointer dereference.
      • Fixed bug GH-13833: Applying zero offset to null pointer in zend_hash.c.
      • Fix potential NULL pointer dereference before calling EVP_SignInit.
    • PHPDBG

      • Fixed bug GH-13827: Null pointer access of type zval in phpdbg_frame.
    • Posix

      • Fix usage of reentrant functions in ext/posix.
    • Session

      • Fixed bug GH-13856: Member access within null pointer of type ps_files in ext/session/mod_files.c.
      • Fixed bug GH-13891: memleak and segfault when using ini_set with session.trans_sid_hosts.
      • Fixed buffer _read/_write size limit on windows for the file mode.
    • Streams

      • Fixed file_get_contents() on Windows fails with "errno=22 Invalid argument".
      • Fixed bug GH-13264: Part 1 - Memory leak on stream filter failure.
      • Fixed bug GH-13860: Incorrect PHP_STREAM_OPTION_CHECK_LIVENESS case in ext/openssl/xp_ssl.c - causing use of dead socket.
      • Fixed bug GH-11678: Build fails on musl 1.2.4 - lfs64.
    • Treewide

      • Fix gcc-14 Wcalloc-transposed-args warnings.