#30674 [Ver->Fbk]: Unexpected results and core dump with recursive references serializing

From: Date: Fri, 13 May 2005 20:56:54 +0000
Subject: #30674 [Ver->Fbk]: Unexpected results and core dump with recursive references serializing
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-78986@lists.php.net to get a copy of this message
ID: 30674 Updated by: tony2001@php.net Reported By: fmmarzoa at gmx dot net -Status: Verified +Status: Feedback Bug Type: Zend Engine 2 problem Operating System: * PHP Version: 5CVS-STABLE-2005-03-07 New Comment: Please try using this CVS snapshot: http://snaps.php.net/php5-STABLE-latest.tar.gz For Windows: http://snaps.php.net/win32/php5.0-win32-latest.zip Can't reproduce it with latest CVS. Previous Comments: ------------------------------------------------------------------------ [2005-03-07 21:58:41] sniper@php.net I can not reproduce this with latest HEAD branch but PHP_5_0 branch is still broken. ------------------------------------------------------------------------ [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

« previous php.bugs (#78986) next »