ID:               26753
 Updated by:       [EMAIL PROTECTED]
 Reported By:      Markus dot Lidel at shadowconnect dot com
 Status:           Open
 Bug Type:         Scripting Engine problem
 Operating System: Linux
-PHP Version:      4CVS, 5CVS
+PHP Version:      5CVS
 New Comment:

Fixed in PHP 4 with your "patch". Still need to figure out the best way
to fix this in PHP 5. (either the same patch or by nuking of
zend_register_list_destructors() altogether)


Previous Comments:
------------------------------------------------------------------------

[2004-01-29 13:27:48] Markus dot Lidel at shadowconnect dot com

Hi...



i have two modules. One uses the other. So i use the function to get
the id for the objects of the other module.



Bye...

------------------------------------------------------------------------

[2004-01-29 11:44:22] [EMAIL PROTECTED]

Why do you use it?



------------------------------------------------------------------------

[2003-12-31 08:07:45] Markus dot Lidel at shadowconnect dot com

Description:
------------
If you use the zend_fetch_list_dtor_id function, and you have for
example loaded the "crack" extension (which registers a destructor
using the function register_list_destructors()), php crashes. The
source of the problem is this line:



if (strcmp(type_name, lde->type_name) == 0) {



The register_list_destructors() set lde->type_name to NULL. If you
replace the code with



if (lde->type_name && (strcmp(type_name, lde->type_name) == 0)) {



the function works fine.

Reproduce code:
---------------
int id = zend_fetch_list_dtor_id function("foo");



------------------------------------------------------------------------


-- 
Edit this bug report at http://bugs.php.net/?id=26753&edit=1

Reply via email to