#32521 [Asn->Csd]: apache2handler accidental crashes caused by SPL
| From: | helly@php.net | Date: | Thu, 31 Mar 2005 17:18:16 +0000 |
| Subject: | #32521 [Asn->Csd]: apache2handler accidental crashes caused by SPL | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-76123@lists.php.net to get a copy of this message | ||
ID: 32521
Updated by: helly@php.net
Reported By: su1d at phpclub dot net
-Status: Assigned
+Status: Closed
Bug Type: Reproducible crash
-Operating System: Win32
+Operating System: *
PHP Version: 5CVS-2005-03-31 (dev)
Assigned To: helly
New Comment:
This bug has been fixed in CVS.
Snapshots of the sources are packaged every three hours; this change
will be in the next snapshot. You can grab the snapshot at
http://snaps.php.net/.
Thank you for the report, and for helping us make PHP better.
Previous Comments:
------------------------------------------------------------------------
[2005-03-31 19:05:26] su1d at phpclub dot net
Description:
------------
OS: Windows XP Pro (SP1, Eng)
PHP: 5.1-dev
Apache: 2.0.53
When PHP is installed as Apache's module, the web server sometimes
segfaults accidentally.
The call stack backtrace is the following:
php5ts.dll!_estrdup(const char * s=0x00d4b8d8) Line 400 + 0xf bytes C
php5ts.dll!zm_activate_spl(int type=11, int module_number=18392672,
void * * * tsrm_ls=0x00d4b8a8) Line 510 + 0x19 bytes C
php5ts.dll!module_registry_request_startup(_zend_module_entry *
module=0x0118a660, void * * * tsrm_ls=0x0533fe10) Line 1543 + 0x10
bytes C
php5ts.dll!zend_hash_apply(_hashtable * ht=0x007061c0, int (void *,
void * * *)* apply_func=0x0118a660, void * * * tsrm_ls=0x007d9f0a)
Line 664 + 0x7 bytes C
php5ts.dll!zend_activate_modules(void * * * tsrm_ls=0x0118a660) Line
793 + 0x14 bytes C
php5ts.dll!php_request_startup(void * * * tsrm_ls=0x0118a660) Line
1058 C
php5apache2.dll!php_handler(request_rec * r=0x0065ef40) Line 534 + 0x8
bytes C
[...]
Obviously, the crash occurs directly in Zend/zend_alloc.c:400 inside of
the function _estrdup() which is in turn called from
ext/spl/php_spl.c:510.
That seems to be a Windows specific behaviour,
so a tiny patch is being proposed to fix the problem.
The patch could be downloaded from
http://tmp.e-taller.net/php_spl.c-win32.patch
Reproduce code:
---------------
Any PHP application,
i.e. entering to phpMyAdmin always leads to a crash.
Expected result:
----------------
no segfaults
Actual result:
--------------
*oops*
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=32521&edit=1