cosure->debug_info is not a subject for GC

This commit is contained in:
Dmitry Stogov 2014-03-21 21:35:47 +04:00
parent a4280c340b
commit 5c169160e6

View File

@ -359,6 +359,12 @@ static HashTable *zend_closure_get_gc(zval *obj, zval **table, int *n TSRMLS_DC)
{
zend_closure *closure = (zend_closure *)Z_OBJ_P(obj);
if (closure->debug_info != NULL) {
zend_hash_destroy(closure->debug_info);
efree(closure->debug_info);
closure->debug_info = NULL;
}
*table = Z_TYPE(closure->this_ptr) != IS_NULL ? &closure->this_ptr : NULL;
*n = Z_TYPE(closure->this_ptr) != IS_NULL ? 1 : 0;
return (closure->func.type == ZEND_USER_FUNCTION) ?