#25274 [Opn]: zvals refcount allways 1 after leavinf __wakeup()-method
| From: | sniper@php.net | Date: | Thu, 28 Aug 2003 14:48:29 +0000 |
| Subject: | #25274 [Opn]: zvals refcount allways 1 after leavinf __wakeup()-method | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-46852@lists.php.net to get a copy of this message | ||
ID: 25274
Updated by: sniper@php.net
Reported By: bernd@php.net
Status: Open
Bug Type: Zend Engine 2 problem
Operating System: linux
PHP Version: 5CVS-2003-08-27 (dev)
New Comment:
ZE2 problem, can't reproduce with PHP 4.3.3.
Previous Comments:
------------------------------------------------------------------------
[2003-08-28 08:17:52] bernd@php.net
after commenting out line 2543 of Zend/zend_execute.c the bug seems to
be fixed.. but i have no idea if that solution induces more other
problems...
------------------------------------------------------------------------
[2003-08-27 10:12:42] bernd@php.net
Description:
------------
Its mainly an internal problem...
if i use zval_add_ref(&getThis()); in the __wakeup() method
it will be ignored at all... after unserializing the refcount of my
object is allways set to "1" :(
its reproduceable even through this php-code:
Reproduce code:
---------------
<?php
$a=array();
class x {
function __wakeup() {
global $a;
$a[]=$this;
}
}
$t=new x();
var_dump($t);
$t=unserialize(serialize($t));
unset($a);
var_dump($t);
?>
Expected result:
----------------
object(x)#1 (0) {
}
object(x)#1 (0) {
}
Actual result:
--------------
object(x)#1 (0) {
}
UNKNOWN:0
or:
object(x)#1 (0) { }
Fatal error: Trying to access invalid object in ... on line 15
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=25274&edit=1