Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:8082 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 21304 invoked by uid 1010); 23 Feb 2004 13:41:54 -0000 Delivered-To: ezmlm-scan-internals@lists.php.net Delivered-To: ezmlm-internals@lists.php.net Received: (qmail 21238 invoked from network); 23 Feb 2004 13:41:54 -0000 Received: from unknown (HELO mailhub.kerio.com) (195.39.55.2) by pb1.pair.com with SMTP; 23 Feb 2004 13:41:54 -0000 Received: from kerio.com ([192.168.44.140]) (authenticated user jsnajdr@kerio.com) by mailhub.kerio.com (Kerio MailServer 6.0.0 beta 1) (using TLSv1/SSLv3 with cipher AES256-SHA (256 bits)) for internals@lists.php.net; Mon, 23 Feb 2004 14:41:53 +0100 Message-ID: <403A031C.8030905@kerio.com> Date: Mon, 23 Feb 2004 14:41:48 +0100 User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.5) Gecko/20031013 Thunderbird/0.3 X-Accept-Language: en-us, en MIME-Version: 1.0 To: internals@lists.php.net Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Subject: [PATCH] Bug #26005 From: jsnajdr@kerio.com (Jaroslav Snajdr) Hello, here is a patch for bug #26005 - random crash in session module. I analyzed the bug and posted a solution in Bugzilla more than 2 month ago and the bugfix is not incorporated yet. Jarda Snajdr *** php-4.3.4/ext/session/session.c Wed Oct 8 12:25:39 2003 --- php-4.3.4-n/ext/session/session.c Tue Dec 9 11:36:24 2003 *************** *** 1543,1548 **** --- 1543,1556 ---- } } + static void php_session_init_globals(php_ps_globals *ps_globals TSRMLS_DC) + { + ps_globals->id = NULL; + ps_globals->session_status = php_session_none; + ps_globals->mod_data = NULL; + ps_globals->http_session_vars = NULL; + } + static void php_rinit_session_globals(TSRMLS_D) { PS(id) = NULL; *************** *** 1618,1624 **** #ifdef ZTS php_ps_globals *ps_globals; ! ts_allocate_id(&ps_globals_id, sizeof(php_ps_globals), NULL, NULL); ps_globals = ts_resource(ps_globals_id); #endif --- 1626,1632 ---- #ifdef ZTS php_ps_globals *ps_globals; ! ts_allocate_id(&ps_globals_id, sizeof(php_ps_globals), (ts_allocate_ctor) php_session_init_globals, NULL); ps_globals = ts_resource(ps_globals_id); #endif