"Rob Richards" <[EMAIL PROTECTED]> writes: > php5ts_debug.dll!_zend_is_inconsistent(_hashtable * ht=0xcdcdcdcd, char * > file=0x1053aaf0, int line=510) Line 53 + 0x3 C > php5ts_debug.dll!zend_hash_destroy(_hashtable * ht=0xcdcdcdcd) Line 510 + > 0x19 C > php5ts_debug.dll!php_shutdown_stream_wrappers(int module_number=0, void * * > * tsrm_ls=0x00954278) Line 1379 + 0x12 C > php5ts_debug.dll!php_module_shutdown(void * * * tsrm_ls=0x00954278) Line > 1516 + 0xd C > php5ts_debug.dll!php_module_shutdown(void * * * tsrm_ls=0x00954278) Line > 1516 + 0xd C > php-cli.exe!main() Line 1052 + 0xd C > php-cli.exe!mainCRTStartup() Line 338 + 0x11 C
I don't know the internals of PHP, but a hash table parameter of 0xcdcdcdcd looks an awful lot to me like there's a debug malloc library of some sort that fills freed memory with '\xcd', meaning that zend_hash_destroy() is being called with previously freed memory. Since php_shutdown_stream_wrappers() calls zend_hash_destroy() three times, but the first and third call (directly or indirectly) pass a parameter which is simply the address of a variable, my first guess would be that this call: zend_hash_destroy(php_get_stream_filters_hash()) is the culprit, which implicates the variable 'stream_filters" in some way, shape or form (via the function _php_get_stream_filters_hash() in filters.c:41. I hope maybe this helps someone who knows the code determine the problem. I did a cursory search for something pertaining to 0xcd and could not find it, but maybe someone more familiar with the code will recognize 0xcdcdcdcd... Cheers, Derrell -- PHP Internals - PHP Runtime Development Mailing List To unsubscribe, visit: http://www.php.net/unsub.php