summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Zend/zend_objects_API.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/Zend/zend_objects_API.h b/Zend/zend_objects_API.h
index 61147dd8c6..7be815e9de 100644
--- a/Zend/zend_objects_API.h
+++ b/Zend/zend_objects_API.h
@@ -67,7 +67,9 @@
#define OBJ_RELEASE(obj) do { \
zend_object *_obj = (obj); \
if (--_obj->gc.refcount == 0) { \
- zend_objects_store_del(_obj TSRMLS_CC); \
+ zend_objects_store_del(_obj TSRMLS_CC); \
+ } else { \
+ gc_possible_root(_obj TSRMLS_CC); \
} \
} while (0)