]>
Commit | Line | Data |
---|---|---|
699b310f AM |
1 | diff --git a/Zend/zend_objects_API.c b/Zend/zend_objects_API.c |
2 | index 1fe5d0c..b5dd48f 100644 | |
3 | --- a/Zend/zend_objects_API.c | |
4 | +++ b/Zend/zend_objects_API.c | |
5 | @@ -57,6 +57,11 @@ ZEND_API void zend_objects_store_call_destructors(zend_objects_store *objects TS | |
6 | obj->dtor(obj->object, i TSRMLS_CC); | |
7 | obj = &objects->object_buckets[i].bucket.obj; | |
8 | obj->refcount--; | |
9 | + | |
10 | + if (obj->refcount == 0) { | |
11 | + /* in case gc_collect_cycle is triggered before free_storage */ | |
12 | + GC_REMOVE_ZOBJ_FROM_BUFFER(obj); | |
13 | + } | |
14 | } | |
15 | } | |
16 | } |