diff options
author | Dmitry Stogov <dmitry@zend.com> | 2018-07-12 14:04:14 +0300 |
---|---|---|
committer | Dmitry Stogov <dmitry@zend.com> | 2018-07-12 14:04:14 +0300 |
commit | 7d4e18b05dc962e923236a8d3df81fb0b10b113d (patch) | |
tree | 5e5e4301a9dc721a9ae2aa53a3db6ecf08f8ddf2 /Zend/zend.h | |
parent | 0834679e40555bb8936a096cd7deda3841239985 (diff) | |
download | php-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.h')
-rw-r--r-- | Zend/zend.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/Zend/zend.h b/Zend/zend.h index 4a4e38d9c2..4f33dd89cc 100644 --- a/Zend/zend.h +++ b/Zend/zend.h @@ -139,7 +139,8 @@ struct _zend_class_entry { union _zend_function *serialize_func; union _zend_function *unserialize_func; - zend_class_iterator_funcs iterator_funcs; + /* allocated only if class implements Itetrator or IteratorAggregate interface */ + zend_class_iterator_funcs *iterator_funcs_ptr; /* handlers */ zend_object* (*create_object)(zend_class_entry *class_type); |