summaryrefslogtreecommitdiff
path: root/Zend/zend_opcode.c
diff options
context:
space:
mode:
authorDmitry Stogov <dmitry@zend.com>2018-07-12 14:04:14 +0300
committerDmitry Stogov <dmitry@zend.com>2018-07-12 14:04:14 +0300
commit7d4e18b05dc962e923236a8d3df81fb0b10b113d (patch)
tree5e5e4301a9dc721a9ae2aa53a3db6ecf08f8ddf2 /Zend/zend_opcode.c
parent0834679e40555bb8936a096cd7deda3841239985 (diff)
downloadphp-git-7d4e18b05dc962e923236a8d3df81fb0b10b113d.tar.gz
Improved user iterator implementation to reduce zend_class_entry memory consumption and avoid race condition during resolving/caching of user iterator functions of internal classes in ZTS build.
Diffstat (limited to 'Zend/zend_opcode.c')
-rw-r--r--Zend/zend_opcode.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/Zend/zend_opcode.c b/Zend/zend_opcode.c
index ce0cd2d4a5..1878a95466 100644
--- a/Zend/zend_opcode.c
+++ b/Zend/zend_opcode.c
@@ -318,6 +318,9 @@ ZEND_API void destroy_zend_class(zval *zv)
} ZEND_HASH_FOREACH_END();
zend_hash_destroy(&ce->constants_table);
}
+ if (ce->iterator_funcs_ptr) {
+ free(ce->iterator_funcs_ptr);
+ }
if (ce->num_interfaces > 0) {
free(ce->interfaces);
}