cvs: ZendEngine2 / zend_objects_API.c

From: Date: Sun, 23 May 2004 20:33:09 +0000
Subject: cvs: ZendEngine2 / zend_objects_API.c
Groups: php.zend-engine.cvs 
Request: Send a blank email to php-zend-engine-cvs+get-2658@lists.php.net to get a copy of this message
andi Sun May 23 16:33:09 2004 EDT Modified files: /ZendEngine2 zend_objects_API.c Log: - Fix problem with object being destroyed more than once http://cvs.php.net/diff.php/ZendEngine2/zend_objects_API.c?r1=1.40&r2=1.41&ty=u Index: ZendEngine2/zend_objects_API.c diff -u ZendEngine2/zend_objects_API.c:1.40 ZendEngine2/zend_objects_API.c:1.41 --- ZendEngine2/zend_objects_API.c:1.40 Mon May 17 07:27:16 2004 +++ ZendEngine2/zend_objects_API.c Sun May 23 16:33:09 2004 @@ -17,7 +17,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: zend_objects_API.c,v 1.40 2004/05/17 11:27:16 wez Exp $ */ +/* $Id: zend_objects_API.c,v 1.41 2004/05/23 20:33:09 andi Exp $ */ #include "zend.h" #include "zend_globals.h" @@ -48,10 +48,12 @@ if (objects->object_buckets[i].valid) { struct _store_object *obj = &objects->object_buckets[i].bucket.obj; - if (obj->dtor && !objects->object_buckets[i].destructor_called) { - obj->dtor(obj->object, i TSRMLS_CC); + if (!objects->object_buckets[i].destructor_called) { + objects->object_buckets[i].destructor_called = 1; + if (obj->dtor) { + obj->dtor(obj->object, i TSRMLS_CC); + } } - objects->object_buckets[i].destructor_called = 1; } } }

« previous php.zend-engine.cvs (#2658) next »