summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAntony Dovgal <tony2001@php.net>2009-07-28 08:54:23 +0000
committerAntony Dovgal <tony2001@php.net>2009-07-28 08:54:23 +0000
commit69dba3c9967d486e19b9c1beacd9b4da7ecfc99f (patch)
tree90478b3b20707ed0a4402f2eb996ca926edbaac9
parentbf0ef43d3094bc1025f1bc9de2af5451132daee3 (diff)
downloadphp-git-69dba3c9967d486e19b9c1beacd9b4da7ecfc99f.tar.gz
fix segfault in session/tests/031.phpt by adding optional extension
dependency (php_hash_hashtable has to be initialized when setting session.hash_function)
-rw-r--r--ext/session/config.m41
-rw-r--r--ext/session/session.c10
2 files changed, 10 insertions, 1 deletions
diff --git a/ext/session/config.m4 b/ext/session/config.m4
index 93df332b40..bc8001f85a 100644
--- a/ext/session/config.m4
+++ b/ext/session/config.m4
@@ -12,6 +12,7 @@ if test "$PHP_SESSION" != "no"; then
PHP_PWRITE_TEST
PHP_PREAD_TEST
PHP_NEW_EXTENSION(session, session.c mod_files.c mod_mm.c mod_user.c, $ext_shared)
+ PHP_ADD_EXTENSION_DEP(session, hash)
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,[ ])
diff --git a/ext/session/session.c b/ext/session/session.c
index 0a9cc13acf..c03e3ade1c 100644
--- a/ext/session/session.c
+++ b/ext/session/session.c
@@ -2352,8 +2352,16 @@ static int php_session_rfc1867_callback(unsigned int event, void *event_data, vo
} /* }}} */
+static const zend_module_dep session_deps[] = { /* {{{ */
+ ZEND_MOD_OPTIONAL("hash")
+ {NULL, NULL, NULL}
+};
+/* }}} */
+
zend_module_entry session_module_entry = {
- STANDARD_MODULE_HEADER,
+ STANDARD_MODULE_HEADER_EX,
+ NULL,
+ session_deps,
"session",
session_functions,
PHP_MINIT(session), PHP_MSHUTDOWN(session),