diff options
author | Emiel Bruijntjes <emiel.bruijntjes@copernica.com> | 2015-04-12 21:00:12 +0200 |
---|---|---|
committer | Emiel Bruijntjes <emiel.bruijntjes@copernica.com> | 2015-04-12 21:38:29 +0200 |
commit | 5470a3d9556c04471660288a10098528ec9892e7 (patch) | |
tree | fff5bb4ec47e1e39ec7b7a9e211b66a34fb6dd0a /zend/executestate.h | |
parent | 8779ed80dd5d6794f9d3739a2c2cf10f6b2ee767 (diff) |
stop calling zend_next_free_module() -- some users complain that this function does not exist, this hopefully fixes issue #185
Diffstat (limited to 'zend/executestate.h')
-rw-r--r-- | zend/executestate.h | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/zend/executestate.h b/zend/executestate.h index 8e33b16..d71a252 100644 --- a/zend/executestate.h +++ b/zend/executestate.h @@ -26,11 +26,18 @@ class ExecuteState private: /** * All the original settings + * @var mixed */ zend_op_array *_active_op_array; zval **_return_value_ptr_ptr; zend_op **_opline_ptr; int _interactive; + + /** + * The new value for 'no-extensions' + * @var int + */ + int _no_extensions; #ifdef ZTS /** @@ -42,15 +49,22 @@ private: public: /** + * No trivial constructor + */ + ExecuteState() = delete; + + /** * Constructor + * @param no_extensions */ - ExecuteState(TSRMLS_D) + ExecuteState(int no_extensions TSRMLS_DC) { // store all the original stuff _active_op_array = EG(active_op_array); _return_value_ptr_ptr = EG(return_value_ptr_ptr); _opline_ptr = EG(opline_ptr); _interactive = CG(interactive); + _no_extensions = no_extensions; #ifdef ZTS // copy tsrm_ls param @@ -65,7 +79,7 @@ public: { // restore all settings CG(interactive) = _interactive; - EG(no_extensions) = 0; + EG(no_extensions) = _no_extensions; EG(opline_ptr) = _opline_ptr; EG(active_op_array) = _active_op_array; EG(return_value_ptr_ptr) = _return_value_ptr_ptr; |