summaryrefslogtreecommitdiff
path: root/Zend/zend_execute_API.c
diff options
context:
space:
mode:
authorXinchen Hui <laruence@gmail.com>2017-12-28 16:31:09 +0800
committerXinchen Hui <laruence@gmail.com>2017-12-28 16:31:09 +0800
commit650264e360e7cda8b224283dde55673ed022314d (patch)
tree876861a1f03debf4a1b62b964c5bfba7b119c51e /Zend/zend_execute_API.c
parent4b5e182d61e974925ba558f3b5a666606cf85f33 (diff)
downloadphp-git-650264e360e7cda8b224283dde55673ed022314d.tar.gz
Fixed bug #75742 (potential memleak in internal classes's static members)
Diffstat (limited to 'Zend/zend_execute_API.c')
-rw-r--r--Zend/zend_execute_API.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/Zend/zend_execute_API.c b/Zend/zend_execute_API.c
index a619b3ccf3..adf5f96c71 100644
--- a/Zend/zend_execute_API.c
+++ b/Zend/zend_execute_API.c
@@ -296,6 +296,8 @@ void shutdown_executor(void) /* {{{ */
break;
}
} ZEND_HASH_FOREACH_END_DEL();
+
+ zend_cleanup_internal_classes();
} else {
zend_hash_graceful_reverse_destroy(&EG(symbol_table));
@@ -358,6 +360,8 @@ void shutdown_executor(void) /* {{{ */
} ZEND_HASH_FOREACH_END_DEL();
}
+ zend_cleanup_internal_classes();
+
while (EG(symtable_cache_ptr)>=EG(symtable_cache)) {
zend_hash_destroy(*EG(symtable_cache_ptr));
FREE_HASHTABLE(*EG(symtable_cache_ptr));
@@ -388,8 +392,6 @@ void shutdown_executor(void) /* {{{ */
EG(ht_iterators_used) = 0;
- zend_cleanup_internal_classes();
-
zend_shutdown_fpu();
}
/* }}} */