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) Assigned To: dmitry New Comment:
still working on finding sample code that breaks it, but heres a backtrace from the cli build: #0 zend_hash_copy (target=0x11fd780, source=0x433980, pCopyConstructor=0x204180 <zval_add_ref_or_clone>, tmp=0x0, size=4) at /export/apache/php5-200510030630/Zend/zend_hash.c:760 #1 0x00204298 in zend_objects_clone_members (new_object=0x1646410, new_obj_val={handle = 16395, handlers = 0x35dc08}, old_object=0x4346c0, handle=21) at /export/apache/php5-200510030630/Zend/zend_objects.c:141 #2 0x002043e8 in zend_objects_clone_obj (zobject=0x8) at /export/apache/php5-200510030630/Zend/zend_objects.c:172 #3 0x0020423c in zval_add_ref_or_clone (p=0x11fd73c) at /export/apache/php5-200510030630/Zend/zend_objects.c:129 #4 0x001f7504 in zend_hash_copy (target=0x11fd4c8, source=0xdbad88, pCopyConstructor=0x204180 <zval_add_ref_or_clone>, tmp=0x0, size=4) at /export/apache/php5-200510030630/Zend/zend_hash.c:765 #5 0x00204298 in zend_objects_clone_members (new_object=0x16463c0, new_obj_val={handle = 16394, handlers = 0x35dc08}, old_object=0x424fd8, handle=1) at /export/apache/php5-200510030630/Zend/zend_objects.c:141 #6 0x002043e8 in zend_objects_clone_obj (zobject=0x8) at /export/apache/php5-200510030630/Zend/zend_objects.c:172 #7 0x0020423c in zval_add_ref_or_clone (p=0x11fd48c) at /export/apache/php5-200510030630/Zend/zend_objects.c:129 #8 0x001f7504 in zend_hash_copy (target=0x11fd408, source=0x433980, pCopyConstructor=0x204180 <zval_add_ref_or_clone>, tmp=0x0, size=4) at /export/apache/php5-200510030630/Zend/zend_hash.c:765 #9 0x00204298 in zend_objects_clone_members (new_object=0x1646370, new_obj_val={handle = 16393, handlers = 0x35dc08}, old_object=0x4346c0, handle=21) at /export/apache/php5-200510030630/Zend/zend_objects.c:141 #10 0x002043e8 in zend_objects_clone_obj (zobject=0x8) at /export/apache/php5-200510030630/Zend/zend_objects.c:172 #11 0x0020423c in zval_add_ref_or_clone (p=0x11fd3c4) at /export/apache/php5-200510030630/Zend/zend_objects.c:129 #12 0x001f7504 in zend_hash_copy (target=0x11fd150, source=0xdbad88, pCopyConstructor=0x204180 <zval_add_ref_or_clone>, tmp=0x0, size=4) at /export/apache/php5-200510030630/Zend/zend_hash.c:765 #13 0x00204298 in zend_objects_clone_members (new_object=0x1646320, new_obj_val={handle = 16392, handlers = 0x35dc08}, old_object=0x424fd8, handle=1) at /export/apache/php5-200510030630/Zend/zend_objects.c:141 #14 0x002043e8 in zend_objects_clone_obj (zobject=0x8) at /export/apache/php5-200510030630/Zend/zend_objects.c:172 #15 0x0020423c in zval_add_ref_or_clone (p=0x11fd114) at /export/apache/php5-200510030630/Zend/zend_objects.c:129 #16 0x001f7504 in zend_hash_copy (target=0x11fd090, source=0x433980, pCopyConstructor=0x204180 <zval_add_ref_or_clone>, tmp=0x0, size=4) at /export/apache/php5-200510030630/Zend/zend_hash.c:765 #17 0x00204298 in zend_objects_clone_members (new_object=0x16462d0, new_obj_val={handle = 16391, handlers = 0x35dc08}, old_object=0x4346c0, handle=21) at /export/apache/php5-200510030630/Zend/zend_objects.c:141 #18 0x002043e8 in zend_objects_clone_obj (zobject=0x8) at /export/apache/php5-200510030630/Zend/zend_objects.c:172 #19 0x0020423c in zval_add_ref_or_clone (p=0x11fd04c) at /export/apache/php5-200510030630/Zend/zend_objects.c:129 #20 0x001f7504 in zend_hash_copy (target=0x11fcdd8, source=0xdbad88, pCopyConstructor=0x204180 <zval_add_ref_or_clone>, tmp=0x0, size=4) at /export/apache/php5-200510030630/Zend/zend_hash.c:765 #21 0x00204298 in zend_objects_clone_members (new_object=0x1646280, new_obj_val={handle = 16390, handlers = 0x35dc08}, old_object=0x424fd8, handle=1) at /export/apache/php5-200510030630/Zend/zend_objects.c:141 #22 0x002043e8 in zend_objects_clone_obj (zobject=0x8) at /export/apache/php5-200510030630/Zend/zend_objects.c:172 #23 0x0020423c in zval_add_ref_or_clone (p=0x11fcd9c) at /export/apache/php5-200510030630/Zend/zend_objects.c:129 #24 0x001f7504 in zend_hash_copy (target=0x11fcd18, source=0x433980, pCopyConstructor=0x204180 <zval_add_ref_or_clone>, tmp=0x0, size=4) at /export/apache/php5-200510030630/Zend/zend_hash.c:765 #25 0x00204298 in zend_objects_clone_members (new_object=0x1646230, new_obj_val={handle = 16389, handlers = 0x35dc08}, old_object=0x4346c0, handle=21) at /export/apache/php5-200510030630/Zend/zend_objects.c:141 #26 0x002043e8 in zend_objects_clone_obj (zobject=0x8) at /export/apache/php5-200510030630/Zend/zend_objects.c:172 #27 0x0020423c in zval_add_ref_or_clone (p=0x11fccd4) at /export/apache/php5-200510030630/Zend/zend_objects.c:129 #28 0x001f7504 in zend_hash_copy (target=0x11fca60, source=0xdbad88, pCopyConstructor=0x204180 <zval_add_ref_or_clone>, tmp=0x0, size=4) at /export/apache/php5-200510030630/Zend/zend_hash.c:765 #29 0x00204298 in zend_objects_clone_members (new_object=0x16461e0, new_obj_val={handle = 16388, handlers = 0x35dc08}, old_object=0x424fd8, handle=1) at /export/apache/php5-200510030630/Zend/zend_objects.c:141 #30 0x002043e8 in zend_objects_clone_obj (zobject=0x8) at /export/apache/php5-200510030630/Zend/zend_objects.c:172 #31 0x0020423c in zval_add_ref_or_clone (p=0x11fca24) at /export/apache/php5-200510030630/Zend/zend_objects.c:129 #32 0x001f7504 in zend_hash_copy (target=0x11fc9a0, source=0x433980, pCopyConstructor=0x204180 <zval_add_ref_or_clone>, tmp=0x0, size=4) at /export/apache/php5-200510030630/Zend/zend_hash.c:765 #33 0x00204298 in zend_objects_clone_members (new_object=0x1646190, new_obj_val={handle = 16387, handlers = 0x35dc08}, old_object=0x4346c0, handle=21) at /export/apache/php5-200510030630/Zend/zend_objects.c:141 #34 0x002043e8 in zend_objects_clone_obj (zobject=0x8) at /export/apache/php5-200510030630/Zend/zend_objects.c:172 #35 0x0020423c in zval_add_ref_or_clone (p=0x11fc95c) at /export/apache/php5-200510030630/Zend/zend_objects.c:129 #36 0x001f7504 in zend_hash_copy (target=0x11fc6e8, source=0xdbad88, pCopyConstructor=0x204180 <zval_add_ref_or_clone>, tmp=0x0, size=4) at /export/apache/php5-200510030630/Zend/zend_hash.c:765 #37 0x00204298 in zend_objects_clone_members (new_object=0x1646140, new_obj_val={handle = 16386, handlers = 0x35dc08}, old_object=0x424fd8, handle=1) at /export/apache/php5-200510030630/Zend/zend_objects.c:141 #38 0x002043e8 in zend_objects_clone_obj (zobject=0x8) at /export/apache/php5-200510030630/Zend/zend_objects.c:172 #39 0x0020423c in zval_add_ref_or_clone (p=0x11fc6ac) at /export/apache/php5-200510030630/Zend/zend_objects.c:129 #40 0x001f7504 in zend_hash_copy (target=0x11fc628, source=0x433980, pCopyConstructor=0x204180 <zval_add_ref_or_clone>, tmp=0x0, size=4) at /export/apache/php5-200510030630/Zend/zend_hash.c:765 #41 0x00204298 in zend_objects_clone_members (new_object=0x16460f0, new_obj_val={handle = 16385, handlers = 0x35dc08}, old_object=0x4346c0, handle=21) at /export/apache/php5-200510030630/Zend/zend_objects.c:141 #42 0x002043e8 in zend_objects_clone_obj (zobject=0x8) at /export/apache/php5-200510030630/Zend/zend_objects.c:172 #43 0x0020423c in zval_add_ref_or_clone (p=0x11fc5e4) at /export/apache/php5-200510030630/Zend/zend_objects.c:129 #44 0x001f7504 in zend_hash_copy (target=0x11fc370, source=0xdbad88, pCopyConstructor=0x204180 <zval_add_ref_or_clone>, tmp=0x0, size=4) at /export/apache/php5-200510030630/Zend/zend_hash.c:765 #45 0x00204298 in zend_objects_clone_members (new_object=0x16460a0, new_obj_val={handle = 16384, handlers = 0x35dc08}, old_object=0x424fd8, handle=1) at /export/apache/php5-200510030630/Zend/zend_objects.c:141 #46 0x002043e8 in zend_objects_clone_obj (zobject=0x8) at /export/apache/php5-200510030630/Zend/zend_objects.c:172 #47 0x0020423c in zval_add_ref_or_clone (p=0x1647014) at /export/apache/php5-200510030630/Zend/zend_objects.c:129 #48 0x001f7504 in zend_hash_copy (target=0x1646f90, source=0x433980, pCopyConstructor=0x204180 <zval_add_ref_or_clone>, tmp=0x0, size=4) at /export/apache/php5-200510030630/Zend/zend_hash.c:765 #49 0x00204298 in zend_objects_clone_members (new_object=0x1646050, new_obj_val={handle = 16383, handlers = 0x35dc08}, old_object=0x4346c0, handle=21) at /export/apache/php5-200510030630/Zend/zend_objects.c:141 #50 0x002043e8 in zend_objects_clone_obj (zobject=0x8) at /export/apache/php5-200510030630/Zend/zend_objects.c:172 #51 0x0020423c in zval_add_ref_or_clone (p=0x1646f4c) at /export/apache/php5-200510030630/Zend/zend_objects.c:129 #52 0x001f7504 in zend_hash_copy (target=0x1646cd8, source=0xdbad88, pCopyConstructor=0x204180 <zval_add_ref_or_clone>, tmp=0x0, size=4) at /export/apache/php5-200510030630/Zend/zend_hash.c:765 #53 0x00204298 in zend_objects_clone_members (new_object=0x1646000, new_obj_val={handle = 16382, handlers = 0x35dc08}, old_object=0x424fd8, handle=1) at /export/apache/php5-200510030630/Zend/zend_objects.c:141 #54 0x002043e8 in zend_objects_clone_obj (zobject=0x8) #55 0x0020423c in zval_add_ref_or_clone (p=0x1646c9c) at /export/apache/php5-200510030630/Zend/zend_objects.c:129 #56 0x001f7504 in zend_hash_copy (target=0x1646c18, source=0x433980, pCopyConstructor=0x204180 <zval_add_ref_or_clone>, tmp=0x0, size=4) at /export/apache/php5-200510030630/Zend/zend_hash.c:765 #57 0x00204298 in zend_objects_clone_members (new_object=0x1645fb0, new_obj_val={handle = 16381, handlers = 0x35dc08}, old_object=0x4346c0, handle=21) at /export/apache/php5-200510030630/Zend/zend_objects.c:141 #58 0x002043e8 in zend_objects_clone_obj (zobject=0x8) at /export/apache/php5-200510030630/Zend/zend_objects.c:172 #59 0x0020423c in zval_add_ref_or_clone (p=0x1646bd4) at /export/apache/php5-200510030630/Zend/zend_objects.c:129 #60 0x001f7504 in zend_hash_copy (target=0x1646960, source=0xdbad88, pCopyConstructor=0x204180 <zval_add_ref_or_clone>, tmp=0x0, size=4) at /export/apache/php5-200510030630/Zend/zend_hash.c:765 #61 0x00204298 in zend_objects_clone_members (new_object=0x1645f60, new_obj_val={handle = 16380, handlers = 0x35dc08}, old_object=0x424fd8, handle=1) at /export/apache/php5-200510030630/Zend/zend_objects.c:141 #62 0x002043e8 in zend_objects_clone_obj (zobject=0x8) at /export/apache/php5-200510030630/Zend/zend_objects.c:172 #63 0x0020423c in zval_add_ref_or_clone (p=0x1645f1c) at /export/apache/php5-200510030630/Zend/zend_objects.c:129 #64 0x001f7504 in zend_hash_copy (target=0x1645e98, source=0x433980, pCopyConstructor=0x204180 <zval_add_ref_or_clone>, tmp=0x0, size=4) at /export/apache/php5-200510030630/Zend/zend_hash.c:765 #65 0x00204298 in zend_objects_clone_members (new_object=0x1642750, new_obj_val={handle = 16379, handlers = 0x35dc08}, old_object=0x4346c0, handle=21) at /export/apache/php5-200510030630/Zend/zend_objects.c:141 #66 0x002043e8 in zend_objects_clone_obj (zobject=0x8) at /export/apache/php5-200510030630/Zend/zend_objects.c:172 #67 0x0020423c in zval_add_ref_or_clone (p=0x1645e54) at /export/apache/php5-200510030630/Zend/zend_objects.c:129 #68 0x001f7504 in zend_hash_copy (target=0x1645bb8, source=0xdbad88, pCopyConstructor=0x204180 <zval_add_ref_or_clone>, tmp=0x0, size=4) at /export/apache/php5-200510030630/Zend/zend_hash.c:765 #69 0x00204298 in zend_objects_clone_members (new_object=0x1642700, new_obj_val={handle = 16378, handlers = 0x35dc08}, old_object=0x424fd8, handle=1) at /export/apache/php5-200510030630/Zend/zend_objects.c:141 #70 0x002043e8 in zend_objects_clone_obj (zobject=0x8) at /export/apache/php5-200510030630/Zend/zend_objects.c:172 #71 0x0020423c in zval_add_ref_or_clone (p=0x1645b7c) at /export/apache/php5-200510030630/Zend/zend_objects.c:129 #72 0x001f7504 in zend_hash_copy (target=0x1645af8, source=0x433980, pCopyConstructor=0x204180 <zval_add_ref_or_clone>, tmp=0x0, size=4) at /export/apache/php5-200510030630/Zend/zend_hash.c:765 #73 0x00204298 in zend_objects_clone_members (new_object=0x16426b0, ....................................... ...................................... ................................ #1941 0x00204298 in zend_objects_clone_members (new_object=0x1608970, new_obj_val={handle = 15910, handlers = 0x35dc08}, old_object=0x424fd8, handle=1) at /export/apache/php5-200510030630/Zend/zend_objects.c:141 #1942 0x002043e8 in zend_objects_clone_obj (zobject=0x8) at /export/apache/php5-200510030630/Zend/zend_objects.c:172 #1943 0x0020423c in zval_add_ref_or_clone (p=0x160a184) at /export/apache/php5-200510030630/Zend/zend_objects.c:129 #1944 0x001f7504 in zend_hash_copy (target=0x160a100, source=0x433980, pCopyConstructor=0x204180 <zval_add_ref_or_clone>, tmp=0x0, size=4) at /export/apache/php5-200510030630/Zend/zend_hash.c:765 #1945 0x00204298 in zend_objects_clone_members (new_object=0x1608920, new_obj_val={handle = 15909, handlers = 0x35dc08}, old_object=0x4346c0, handle=21) at /export/apache/php5-200510030630/Zend/zend_objects.c:141 #1946 0x002043e8 in zend_objects_clone_obj (zobject=0x8) at /export/apache/php5-200510030630/Zend/zend_objects.c:172 #1947 0x0020423c in zval_add_ref_or_clone (p=0x160a0bc) at /export/apache/php5-200510030630/Zend/zend_objects.c:129 #1948 0x001f7504 in zend_hash_copy (target=0x1609e48, source=0xdbad88, pCopyConstructor=0x204180 <zval_add_ref_or_clone>, tmp=0x0, size=4) at /export/apache/php5-200510030630/Zend/zend_hash.c:765 #1949 0x00204298 in zend_objects_clone_members (new_object=0x16088d0, new_obj_val={handle = 15908, handlers = 0x35dc08}, old_object=0x424fd8, handle=1) at /export/apache/php5-200510030630/Zend/zend_objects.c:141 ---Type <return> to continue, or q <return> to quit--- #1950 0x002043e8 in zend_objects_clone_obj (zobject=0x8) at /export/apache/php5-200510030630/Zend/zend_objects.c:172 #1951 0x0020423c in zval_add_ref_or_clone (p=0x1609df4) at /export/apache/php5-200510030630/Zend/zend_objects.c:129 #1952 0x001f7504 in zend_hash_copy (target=0x1609d70, source=0x433980, pCopyConstructor=0x204180 <zval_add_ref_or_clone>, tmp=0x0, size=4) at /export/apache/php5-200510030630/Zend/zend_hash.c:765 #1953 0x00204298 in zend_objects_clone_members (new_object=0x1608880, new_obj_val={handle = 15907, handlers = 0x35dc08}, old_object=0x4346c0, handle=21) at /export/apache/php5-200510030630/Zend/zend_objects.c:141 #1954 0x002043e8 in zend_objects_clone_obj (zobject=0x8) at /export/apache/php5-200510030630/Zend/zend_objects.c:172 #1955 0x0020423c in zval_add_ref_or_clone (p=0x1609d2c) at /export/apache/php5-200510030630/Zend/zend_objects.c:129 #1956 0x001f7504 in zend_hash_copy (target=0x1609ab8, source=0xdbad88, pCopyConstructor=0x204180 <zval_add_ref_or_clone>, tmp=0x0, size=4) at /export/apache/php5-200510030630/Zend/zend_hash.c:765 #1957 0x00204298 in zend_objects_clone_members (new_object=0x1608830, new_obj_val={handle = 15906, handlers = 0x35dc08}, old_object=0x424fd8, handle=1) at /export/apache/php5-200510030630/Zend/zend_objects.c:141 #1958 0x002043e8 in zend_objects_clone_obj (zobject=0x8) at /export/apache/php5-200510030630/Zend/zend_objects.c:172 #1959 0x0020423c in zval_add_ref_or_clone (p=0x1609a7c) et.at. Previous Comments: ------------------------------------------------------------------------ [2005-10-03 22:23:13] [EMAIL PROTECTED] We really need a reproducing script. Please try come up with one. ------------------------------------------------------------------------ [2005-10-03 18:02:29] jason at jasonjustman dot com Like i said before, i can't track down the exact sequence (stacktrace of the .php script code shows its in the 12-14th depth), and for full debug - only after parsing about 15kloc of code. When adding in debugging php source code in the new call ( $this->_helper = new helper($this);), it prevents the crash but in one case a print_r($this) in the aggrevator:: scope resulted in an empty object. This testcase is more pseudocode of the segfault pattern than actual instance. If you'd like I can privately attach the application source - but again, its not an application problem - as turning off ze1_compat doesn't cause a segfault , but is required for implicit clone. This happens in the same spot for the 5.0.5, 5.0.6-dev and 5.0.6-latest - even after building in seperate directories with no caching enabled. ------------------------------------------------------------------------ [2005-10-03 12:13:48] [EMAIL PROTECTED] This test case must not work at all. $ php -d "zend.ze1_compatibility_mode=1" bug34712.php Fatal error: Cannot use 'parent' as class name as it is reserved in /home/dmitry/php/test/bug34712.php on line 20 Without "parent" it works fine on Linux/i386. Try to make full rebuild. ------------------------------------------------------------------------ [2005-10-03 11:24:37] [EMAIL PROTECTED] Dmitry, you did something related to this lately? ------------------------------------------------------------------------ [2005-10-03 10:29:43] jason at jasonjustman dot com last two lines of sample code should be: $c = new child; $a = new aggrevator($c); ------------------------------------------------------------------------ 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/34712 -- Edit this bug report at http://bugs.php.net/?id=34712&edit=1