]> granicus.if.org Git - php/commitdiff
MFH: - Fixed bug #26005 (Random "cannot change the session ini settings" errors).
authorfoobar <sniper@php.net>
Tue, 24 Feb 2004 08:49:41 +0000 (08:49 +0000)
committerfoobar <sniper@php.net>
Tue, 24 Feb 2004 08:49:41 +0000 (08:49 +0000)
NEWS
ext/session/session.c

diff --git a/NEWS b/NEWS
index c18c3b0254a4061444d47de0150e90e341861c85..b8a0edf829b8f5c0b391d398575e1a92122bc154 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -11,6 +11,8 @@ PHP 4                                                                      NEWS
   reference). (Ilia)
 - Fixed bug #26753 (zend_fetch_list_dtor_id() doesn't check NULL strings).
   (Jani, Markus dot Lidel at shadowconnect dot com)
+- Fixed bug #26005 (Random "cannot change the session ini settings" errors).
+  (Jani, jsnajdr at kerio dot com)
 
 16 Feb 2004, Version 4.3.5RC3
 - Fixed zero bytes memory allocation when no extra ini files are found in the
index d0ad73588c4ff193a9236e4c7b0af4c150628282..ed5098fac425c38fe3069c18724dd8c3a01a755c 100644 (file)
@@ -1612,14 +1612,26 @@ PHP_RSHUTDOWN_FUNCTION(session)
 }
 /* }}} */
 
+static void php_minit_session_globals(php_ps_globals *ps_globals)
+{
+       ps_globals->save_path = NULL;
+       ps_globals->session_name = NULL;
+       ps_globals->id = NULL;
+       ps_globals->mod = NULL;
+       ps_globals->mod_data = NULL;
+       ps_globals->session_status = php_session_none;
+       ps_globals->http_session_vars = NULL;
+}
 
 PHP_MINIT_FUNCTION(session)
 {
 #ifdef ZTS
        php_ps_globals *ps_globals;
 
-       ts_allocate_id(&ps_globals_id, sizeof(php_ps_globals), NULL, NULL);
+       ts_allocate_id(&ps_globals_id, sizeof(php_ps_globals), (ts_allocate_ctor) php_minit_session_globals, NULL);
        ps_globals = ts_resource(ps_globals_id);
+#else 
+       php_minit_session_globals(&ps_globals);
 #endif
 
        zend_register_auto_global("_SESSION", sizeof("_SESSION")-1 TSRMLS_CC);