php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #35243 Crashes in php_mblen when compiled with thread-safety on Linux
Submitted: 2005-11-16 16:07 UTC Modified: 2005-11-21 09:04 UTC
From: shulmanb at il dot ibm dot com Assigned:
Status: Closed Package: *General Issues
PHP Version: 5CVS-2005-11-19 (snap) OS: Linux
Private report: No CVE-ID: None
 [2005-11-16 16:07 UTC] 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.


Patches

Pull Requests

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2005-11-16 18:18 UTC] sniper@php.net
And if it's still a problem, provide the patch in unified diff format.
 [2005-11-18 17:18 UTC] shulmanb at il dot ibm dot com
Done.

Can be found at: http://news.php.net/php.internals/20164
 [2005-11-20 19:08 UTC] sniper@php.net
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.


 [2005-11-21 08:52 UTC] shulmanb at il dot ibm dot com
Thanks for including the fix.

From what I've seen, it has been included in HEAD, and in 5.1.x.

Any chance of it being included in 5.0.x as well?
 [2005-11-21 09:04 UTC] derick@php.net
No, we're not releasing any more 5.0.x releases.
 
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Sat Dec 21 12:01:31 2024 UTC