ID:               30674
 Updated by:       [EMAIL PROTECTED]
 Reported By:      fmmarzoa at gmx dot net
-Status:           Open
+Status:           Verified
 Bug Type:         Zend Engine 2 problem
-Operating System: Linux (probably others)
+Operating System: *
-PHP Version:      5.0.2
+PHP Version:      5CVS-STABLE-2005-03-07
 New Comment:

I can not reproduce this with latest HEAD branch but
PHP_5_0 branch is still broken.



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

[2004-11-03 16:47:29] fmmarzoa at gmx dot net

(just changed "crashed" by "core dump" in subject)

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

[2004-11-03 16:29:49] fmmarzoa at gmx dot net

Description:
------------
serialize function lost references to itself on an array and produces a
segfault in some other circunstances. I send the code with which I've
discovered the problem, but Andrey Hristov has also cooked some code
based on this that crash the PHP engine. 

Complete quoted thread with more code samples can be found on the
internals list archive:

http://marc.theaimsgroup.com/?l=php-dev&m=109949534625983&w=2

Reproduce code:
---------------
<pre>
<?php

$Arr = array();
$Arr['self'] = &$Arr;
var_dump ( $Arr );

$serdata = serialize ($Arr);
$Arr2 = unserialize ( $serdata );
echo "\n\n";
var_dump ( $Arr2 );

?>
</pre>

Complete quoted thread with more code samples, including segfaults, can
be found on the internals list archive:
http://marc.theaimsgroup.com/?l=php-dev&m=109949534625983&w=2


Expected result:
----------------
array(1) {
 ["self"]=>
 array(1) {
   ["self"]=>
   *RECURSION*
 }
}

array(1) {
 ["self"]=>
 array(1) {
   ["self"]=>
   *RECURSION*
 }
} 

Actual result:
--------------
array(1) {
 ["self"]=>
 array(1) {
   ["self"]=>
   *RECURSION*
 }
}

array(1) {
 ["self"]=>
 array(1) {
   ["self"]=>
   NULL
 }
} 


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


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

Reply via email to