#35243 [Opn->Csd]: Crashes in php_mblen when compiled with thread-safety on Linux
| From: | sniper@php.net | Date: | Sun, 20 Nov 2005 18:08:12 +0000 |
| Subject: | #35243 [Opn->Csd]: Crashes in php_mblen when compiled with thread-safety on Linux | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-88585@lists.php.net to get a copy of this message | ||
ID: 35243
Updated by: sniper@php.net
Reported By: shulmanb at il dot ibm dot com
-Status: Open
+Status: Closed
Bug Type: *General Issues
Operating System: Linux
PHP Version: 5CVS-2005-11-19 (snap)
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-11-18 17:18:24] shulmanb at il dot ibm dot com
Done.
Can be found at: http://news.php.net/php.internals/20164
------------------------------------------------------------------------
[2005-11-16 18:18:33] sniper@php.net
And if it's still a problem, provide the patch in unified diff format.
------------------------------------------------------------------------
[2005-11-16 16:07:01] shulmanb at il dot ibm dot com
Description:
------------
When running on Linux with --enable-maintainer-zts (and yes, I know
it's not wise...), crashes sometimes happen in
ext/standard/php_string.h when using the php_mblen macro.
This happens because in ext/standard/basic_functions.c, in the
basic_globals_ctor function, the value of mblen_state is not
initialized.
The basic_globals_ctor function should include the following lines as
part of the initialization:
#if defined(_REENTRANT)&&defined(HAVE_MBRLEN)&&defined(HAVE_MBSTATE_T)
memset(&BG(mblen_state), 0, sizeof(BG(mblen_state)));
#endif
Unfortunately, I am unable to include code that demonstrate this, as
the crash strongly depends on the (random) value of mblen_state.
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=35243&edit=1