summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ext/spl/php_spl.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/ext/spl/php_spl.c b/ext/spl/php_spl.c
index aab10e568a..b8e10a563c 100644
--- a/ext/spl/php_spl.c
+++ b/ext/spl/php_spl.c
@@ -378,14 +378,14 @@ static void autoload_func_info_dtor(zval *element)
if (!Z_ISUNDEF(alfi->obj)) {
zval_ptr_dtor(&alfi->obj);
}
- if (!Z_ISUNDEF(alfi->closure)) {
- zval_ptr_dtor(&alfi->closure);
- }
if (alfi->func_ptr &&
UNEXPECTED(alfi->func_ptr->common.fn_flags & ZEND_ACC_CALL_VIA_TRAMPOLINE)) {
zend_string_release(alfi->func_ptr->common.function_name);
zend_free_trampoline(alfi->func_ptr);
}
+ if (!Z_ISUNDEF(alfi->closure)) {
+ zval_ptr_dtor(&alfi->closure);
+ }
efree(alfi);
}