summaryrefslogtreecommitdiff
path: root/Zend/zend_objects_API.c
diff options
context:
space:
mode:
authorXinchen Hui <laruence@php.net>2013-08-30 11:23:24 +0800
committerXinchen Hui <laruence@php.net>2013-08-30 11:23:24 +0800
commita607a08e09df9bdfbaf9c4e5bb77202d09465003 (patch)
tree65ffc98018739c8a9ab4df201896aec82408c8c5 /Zend/zend_objects_API.c
parent09ed50fa448832303c1f89538e59a41ee121ebd2 (diff)
parent4e3de606b54425029cc4617215a3360bb8550b2f (diff)
downloadphp-git-a607a08e09df9bdfbaf9c4e5bb77202d09465003.tar.gz
Merge branch 'PHP-5.5'
Diffstat (limited to 'Zend/zend_objects_API.c')
-rw-r--r--Zend/zend_objects_API.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/Zend/zend_objects_API.c b/Zend/zend_objects_API.c
index 1fe5d0c199..b5dd48f798 100644
--- a/Zend/zend_objects_API.c
+++ b/Zend/zend_objects_API.c
@@ -57,6 +57,11 @@ ZEND_API void zend_objects_store_call_destructors(zend_objects_store *objects TS
obj->dtor(obj->object, i TSRMLS_CC);
obj = &objects->object_buckets[i].bucket.obj;
obj->refcount--;
+
+ if (obj->refcount == 0) {
+ /* in case gc_collect_cycle is triggered before free_storage */
+ GC_REMOVE_ZOBJ_FROM_BUFFER(obj);
+ }
}
}
}