Edit report at http://bugs.php.net/bug.php?id=52604&edit=1
ID: 52604
Comment by: zerspam at mail dot ru
Reported by: zerspam at mail dot ru
Summary: Serialization of objects with __sleep() and fatal
error
Status: Open
Type: Bug
Package: Session related
Operating System: irrelevant
PHP Version: Irrelevant
Block user comment: N
New Comment:
Well, 3 weeks left and even no comments from dev team?
Previous Comments:
------------------------------------------------------------------------
[2010-08-14 09:40:26] zerspam at mail dot ru
Description:
------------
Seems like __sleep() does not being invoked when fatal error was risen.
Test script:
---------------
set_error_handler('my_error_handler');
session_start();
$obj = new myclass();
$_SESSION['obj'] = $obj;
$a->b();
class myclass
{
private $a = 1;
private $b = 2;
public function __sleep()
{
return array('a');
}
}
function my_error_handler($code, $error, $file = NULL, $line = NULL)
{
throw new ErrorException($error, $code, 0, $file, $line);
}
Expected result:
----------------
Object with only 'a' property in session file
Actual result:
--------------
Object with 'a' and 'b' properties in session file
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/bug.php?id=52604&edit=1