ID: 34712
User updated by: jason at jasonjustman dot com
Reported By: jason at jasonjustman dot com
-Status: Feedback
+Status: Open
Bug Type: Reproducible crash
Operating System: solars 10
PHP Version: 5CVS-2005-10-03 (snap)
New Comment:
still present:
(gdb) n
Single stepping until exit from function child_main,
which has no line number information.
Program received signal SIGSEGV, Segmentation fault.
0xfef36f20 in zend_objects_clone_obj (zobject=0xff3fffc8) at
/export/apache/php5-200510030630/Zend/zend_objects.c:167
167 new_obj_val = zend_objects_new(&new_object,
old_object->ce TSRMLS_CC);
(gdb) backtrace
#0 0xfef36f20 in zend_objects_clone_obj (zobject=0xff3fffc8) at
/export/apache/php5-200510030630/Zend/zend_objects.c:167
#1 0xfef36de0 in zval_add_ref_or_clone (p=0x0) at
/export/apache/php5-200510030630/Zend/zend_objects.c:129
sniped
Previous Comments:
------------------------------------------------------------------------
[2005-10-03 10:06:07] sniper@php.net
Please try using this CVS snapshot:
http://snaps.php.net/php5-latest.tar.gz
For Windows:
http://snaps.php.net/win32/php5-win32-latest.zip
------------------------------------------------------------------------
[2005-10-03 10:05:08] jason at jasonjustman dot com
Description:
------------
segfault in solaris 10, using php-5.0.6-dev - php5-STABLE-200510030637
Program received signal SIGSEGV, Segmentation fault.
0xff019b38 in zend_objects_clone_obj (zobject=0xff3fffd8) at
/export/apache/php5-STABLE-200510030637/Zend/zend_objects.c:181
181 new_obj_val = zend_objects_new(&new_object,
old_object->ce TSRMLS_CC);
(gdb) backtrace
#0 0xff019b38 in zend_objects_clone_obj (zobject=0xff3fffd8) at
/export/apache/php5-STABLE-200510030637/Zend/zend_objects.c:181
#1 0xff019970 in zval_add_ref_or_clone (p=0x0) at
/export/apache/php5-STABLE-200510030637/Zend/zend_objects.c:127
Reproduce code:
---------------
can't exactly pin down reproduceable code, but it seems to be something
similar to the following:
class aggrevator {
function aggrevator(&$obj) {
$this->obj = &$obj;
$this->_call();
}
function _call()
{
$this->obj->callback();
}
}
class helper {
function helper(&$obj)
{
$this->obj_ref = &$obj;
}
}
class parent { }
class child extends parent {
function callback() {
$this->_helper = new helper($this);
}
}
$c = new child;
$h = new helper($c);
Expected result:
----------------
not to crash...
Actual result:
--------------
f'd in the a, segfault
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=34712&edit=1