diff options
| author | Dmitry Stogov <dmitry@zend.com> | 2014-03-04 16:32:40 +0400 |
|---|---|---|
| committer | Dmitry Stogov <dmitry@zend.com> | 2014-03-04 16:32:40 +0400 |
| commit | dbb6837627b08a991807d0ab2c41b9dc3879a39e (patch) | |
| tree | 4dc5f4ab000622df24bef078cddfea349c0d4298 /Zend/zend_execute.c | |
| parent | f88816acbbbc6bdfc146dc28f29253f0996d82da (diff) | |
| download | php-git-dbb6837627b08a991807d0ab2c41b9dc3879a39e.tar.gz | |
EG(error_zval) must be passed as IS_INDIRECT
Diffstat (limited to 'Zend/zend_execute.c')
| -rw-r--r-- | Zend/zend_execute.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/Zend/zend_execute.c b/Zend/zend_execute.c index 807d9aee62..db08f3c742 100644 --- a/Zend/zend_execute.c +++ b/Zend/zend_execute.c @@ -569,7 +569,7 @@ static zend_always_inline zval *_get_zval_ptr_ptr_var(zend_uint var, const zend_ { zval *ret = EX_VAR(var); - if (UNEXPECTED(Z_TYPE_P(ret) == IS_INDIRECT)) { + if (EXPECTED(Z_TYPE_P(ret) == IS_INDIRECT)) { ret = Z_INDIRECT_P(ret); } else if (!Z_REFCOUNTED_P(ret)) { should_free->var = ret; @@ -1187,7 +1187,7 @@ fetch_from_array: case IS_NULL: if (container == &EG(error_zval)) { - result = &EG(error_zval); + ZVAL_INDIRECT(result, &EG(error_zval)); } else if (type != BP_VAR_UNSET) { convert_to_array: if (Z_TYPE_P(container_ptr) != IS_REFERENCE) { @@ -1293,7 +1293,7 @@ convert_to_array: ZVAL_INDIRECT(result, overloaded_result); } } else { - result = &EG(error_zval); + ZVAL_INDIRECT(result, &EG(error_zval)); } //??? if (dim_type == IS_TMP_VAR) { //??? zval_ptr_dtor(dim); @@ -1314,7 +1314,7 @@ convert_to_array: ZVAL_NULL(result); } else { zend_error(E_WARNING, "Cannot use a scalar value as an array"); - ZVAL_NULL(result); + ZVAL_INDIRECT(result, &EG(error_zval)); } break; } |
