Example #1
0
static void spl_heap_object_free_storage(zend_object *object) /* {{{ */
{
	spl_heap_object *intern = spl_heap_from_obj(object);

	zend_object_std_dtor(&intern->std);

	spl_ptr_heap_destroy(intern->heap);
}
Example #2
0
static void spl_heap_object_free_storage(zend_object *object) /* {{{ */
{
	int i;
	spl_heap_object *intern = spl_heap_from_obj(object);

	zend_object_std_dtor(&intern->std);

	for (i = 0; i < intern->heap->count; ++i) {
		if (!Z_ISUNDEF(intern->heap->elements[i])) {
			zval_ptr_dtor(&intern->heap->elements[i]);
		}
	}

	spl_ptr_heap_destroy(intern->heap);

	zval_ptr_dtor(&intern->retval);

	if (intern->debug_info != NULL) {
		zend_hash_destroy(intern->debug_info);
		efree(intern->debug_info);
	}
}