ID: 39297 Updated by: [EMAIL PROTECTED] Reported By: jeff at procata dot com -Status: Assigned +Status: Feedback Bug Type: Reproducible crash Operating System: Mac OS X 10.3.9 PHP Version: 5.1.6 Assigned To: dmitry New Comment:
This code works just fine with PHP 5.2.0. Previous Comments: ------------------------------------------------------------------------ [2006-10-29 23:09:31] jeff at procata dot com Got it. :) <?php function compareByRef(&$first, &$second) { return $first === $second; } class MyTree implements ArrayAccess { public $parent; public $children = array(); public function offsetExists($offset) {} public function offsetUnset($offset) {} public function offsetSet($offset, $value) { $cannonicalName = strtolower($offset); $this->children[$cannonicalName] = $value; $value->parent = $this; } public function offsetGet($offset) { $cannonicalName = strtolower($offset); return $this->children[$cannonicalName]; } } $id = 'Test'; $root = new MyTree(); $child = new MyTree(); $root[$id] = $child; var_dump(compareByRef($root[$id], $child)); ?> ------------------------------------------------------------------------ [2006-10-29 22:13:41] [EMAIL PROTECTED] Thank you for this bug report. To properly diagnose the problem, we need a short but complete example script to be able to reproduce this bug ourselves. A proper reproducing script starts with <?php and ends with ?>, is max. 10-20 lines long and does not require any external resources such as databases, etc. If the script requires a database to demonstrate the issue, please make sure it creates all necessary tables, stored procedures etc. Please avoid embedding huge scripts into the report. ------------------------------------------------------------------------ [2006-10-29 20:21:41] jeff at procata dot com Trying to isolate this further, I now get: [Sun Oct 29 15:14:13 2006] Script: 'bootstrap.php' /Users/jeff/Downloads/php5.2-200610291330/Zend/ zend_vm_execute.h(7451) : Freeing 0x0158FB60 (16 bytes), script=bootstrap.php Last leak repeated 1 time === Total 2 memory leaks detected === ------------------------------------------------------------------------ [2006-10-29 16:28:39] jeff at procata dot com >From php5.2-200610291330: Program received signal EXC_BAD_ACCESS, Could not access memory. 0x0031a998 in _zval_ptr_dtor (zval_ptr=0x16a46f3, __zend_filename=0x407530 "/Users/jeff/Downloads/php5.2 -200610291330/Zend/zend_variables.c", __zend_lineno=175) at /Users/jeff/Downloads/php5.2-200610291330/Zend/ zend_execute_API.c:412 412 (*zval_ptr)->refcount--; (gdb) bt #0 0x0031a998 in _zval_ptr_dtor (zval_ptr=0x16a46f3, __zend_filename=0x407530 "/Users/jeff/Downloads/php5.2 -200610291330/Zend/zend_variables.c", __zend_lineno=175) at /Users/jeff/Downloads/php5.2-200610291330/Zend/ zend_execute_API.c:412 #1 0x0032dcf8 in _zval_ptr_dtor_wrapper (zval_ptr=0x16a46f3) at /Users/jeff/Downloads/php5.2 -200610291330/Zend/zend_variables.c:175 #2 0x0033fa44 in zend_hash_destroy (ht=0x1654118) at / Users/jeff/Downloads/php5.2-200610291330/Zend/ zend_hash.c:521 #3 0x0035789c in zend_object_std_dtor (object=0x1692628) at /Users/jeff/Downloads/php5.2 -200610291330/Zend/zend_objects.c:45 #4 0x00357d70 in zend_objects_free_object_storage (object=0x1692628) at /Users/jeff/Downloads/php5.2 -200610291330/Zend/zend_objects.c:122 #5 0x0035c9a4 in zend_objects_store_free_object_storage (objects=0x49e148) at /Users/jeff/Downloads/php5.2 -200610291330/Zend/zend_objects_API.c:86 #6 0x0031a474 in shutdown_executor () at /Users/jeff/ Downloads/php5.2-200610291330/Zend/zend_execute_API.c: 299 #7 0x0032fd34 in zend_deactivate () at /Users/jeff/ Downloads/php5.2-200610291330/Zend/zend.c:840 #8 0x002c1b9c in php_request_shutdown (dummy=0x0) at / Users/jeff/Downloads/php5.2-200610291330/main/main.c: 1300 #9 0x003d0cb8 in main (argc=4, argv=0xbffffde0) at / Users/jeff/Downloads/php5.2-200610291330/sapi/cli/ php_cli.c:1259 ------------------------------------------------------------------------ [2006-10-29 13:54:55] [EMAIL PROTECTED] Please try using this CVS snapshot: http://snaps.php.net/php5.2-latest.tar.gz For Windows: http://snaps.php.net/win32/php5.2-win32-latest.zip ------------------------------------------------------------------------ The remainder of the comments for this report are too long. To view the rest of the comments, please view the bug report online at http://bugs.php.net/39297 -- Edit this bug report at http://bugs.php.net/?id=39297&edit=1