Update ext/session spl dependency (#14410)

The spl dependency is configured so the spl_autoload_register is
available when session_start() is used, meaning the spl extension needs
to be loaded before the session. It is marked as optional to be more
explicit as spl is not directly used nor required in the session
extension.
This commit is contained in:
Peter Kokot 2024-06-01 19:13:54 +02:00 committed by GitHub
parent 4fca8a6027
commit ec50b178f1
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 5 additions and 2 deletions

View file

@ -15,7 +15,8 @@ if test "$PHP_SESSION" != "no"; then
PHP_PWRITE_TEST
PHP_PREAD_TEST
PHP_NEW_EXTENSION(session, mod_user_class.c session.c mod_files.c mod_mm.c mod_user.c, $ext_shared,, -DZEND_ENABLE_STATIC_TSRMLS_CACHE=1)
PHP_ADD_EXTENSION_DEP(session, spl)
dnl https://bugs.php.net/53141
PHP_ADD_EXTENSION_DEP(session, spl, true)
PHP_SUBST(SESSION_SHARED_LIBADD)
PHP_INSTALL_HEADERS([ext/session], [php_session.h mod_files.h mod_user.h])
AC_DEFINE(HAVE_PHP_SESSION,1,[ ])

View file

@ -4,6 +4,8 @@ ARG_ENABLE("session", "session support", "yes");
if (PHP_SESSION == "yes") {
EXTENSION("session", "mod_user_class.c session.c mod_files.c mod_mm.c mod_user.c", false /* never shared */, "/DZEND_ENABLE_STATIC_TSRMLS_CACHE=1");
// https://bugs.php.net/53141
ADD_EXTENSION_DEP('session', 'spl', true);
AC_DEFINE("HAVE_PHP_SESSION", 1, "Session support");
PHP_INSTALL_HEADERS("ext/session", "mod_mm.h php_session.h mod_files.h mod_user.h");
}

View file

@ -2998,7 +2998,7 @@ static PHP_MINFO_FUNCTION(session) /* {{{ */
/* }}} */
static const zend_module_dep session_deps[] = { /* {{{ */
ZEND_MOD_REQUIRED("spl")
ZEND_MOD_OPTIONAL("spl")
ZEND_MOD_END
};
/* }}} */