diff options
author | Xinchen Hui <laruence@php.net> | 2015-06-05 11:54:53 +0800 |
---|---|---|
committer | Xinchen Hui <laruence@php.net> | 2015-06-05 11:54:53 +0800 |
commit | d251ced225138381b61dfa5c5f682bbb28e309d9 (patch) | |
tree | 09e2ed71bfb4d647719ac02a5c283cdfbc8db5af /Zend/zend_execute.c | |
parent | 497f9f2cda4e2f2281cfbde148e7408908261c63 (diff) | |
parent | 7f39ee7159e500c7971da99a9cfdbdab0648e8f9 (diff) | |
download | php-git-d251ced225138381b61dfa5c5f682bbb28e309d9.tar.gz |
Merge branch 'master' of git.php.net:php-src
Diffstat (limited to 'Zend/zend_execute.c')
-rw-r--r-- | Zend/zend_execute.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/Zend/zend_execute.c b/Zend/zend_execute.c index 340cd9b481..40868f0dc8 100644 --- a/Zend/zend_execute.c +++ b/Zend/zend_execute.c @@ -57,6 +57,7 @@ typedef int (ZEND_FASTCALL *incdec_t)(zval *); #define get_zval_ptr_ptr(op_type, node, ex, should_free, type) _get_zval_ptr_ptr(op_type, node, ex, should_free, type) #define get_zval_ptr_ptr_undef(op_type, node, ex, should_free, type) _get_zval_ptr_ptr(op_type, node, ex, should_free, type) #define get_obj_zval_ptr(op_type, node, ex, should_free, type) _get_obj_zval_ptr(op_type, node, ex, should_free, type) +#define get_obj_zval_ptr_undef(op_type, node, ex, should_free, type) _get_obj_zval_ptr_undef(op_type, node, ex, should_free, type) #define get_obj_zval_ptr_ptr(op_type, node, ex, should_free, type) _get_obj_zval_ptr_ptr(op_type, node, ex, should_free, type) /* Prototypes */ @@ -516,6 +517,15 @@ static inline zval *_get_obj_zval_ptr(int op_type, znode_op op, zend_execute_dat return get_zval_ptr(op_type, op, execute_data, should_free, type); } +static inline zval *_get_obj_zval_ptr_undef(int op_type, znode_op op, zend_execute_data *execute_data, zend_free_op *should_free, int type) +{ + if (op_type == IS_UNUSED) { + *should_free = NULL; + return &EX(This); + } + return get_zval_ptr_undef(op_type, op, execute_data, should_free, type); +} + static inline zval *_get_obj_zval_ptr_ptr(int op_type, znode_op node, zend_execute_data *execute_data, zend_free_op *should_free, int type) { if (op_type == IS_UNUSED) { |