com php-src: Fix zend_fetch_dimension_const(): Ze nd/zend_execute.c
| From: | Nikita Popov | Date: | Fri, 24 Nov 2017 20:24:13 +0000 |
| Subject: | com php-src: Fix zend_fetch_dimension_const(): Ze nd/zend_execute.c | ||
| Groups: | php.cvs | ||
| Request: | Send a blank email to php-cvs+get-100365@lists.php.net to get a copy of this message | ||
Commit: 6b258197e83a19c40c41604dc47f079e4dc95919
Author: Nikita Popov <nikita.ppv@gmail.com> Fri, 24 Nov 2017 21:24:13 +0100
Parents: 9215be76a6e287076c4727a5f1727086e77d67ce
Branches: master
Link: http://git.php.net/?p=php-src.git;a=commitdiff;h=6b258197e83a19c40c41604dc47f079e4dc95919
Log:
Fix zend_fetch_dimension_const()
Pass IS_TMP_VAR instead of IS_CONST as operand type, as IS_CONST
requires additional guarantees that are not necessarily
satisfied by the caller.
Changed paths:
M Zend/zend_execute.c
Diff:
diff --git a/Zend/zend_execute.c b/Zend/zend_execute.c
index 2025eb3..7ca76d6 100644
--- a/Zend/zend_execute.c
+++ b/Zend/zend_execute.c
@@ -1843,9 +1843,9 @@ static zend_never_inline void zend_fetch_dimension_address_read_LIST(zval
*resul
ZEND_API void zend_fetch_dimension_const(zval *result, zval *container, zval *dim, int type)
{
if (type == BP_VAR_IS) {
- zend_fetch_dimension_address_read_IS(result, container, dim, IS_CONST NO_EXECUTE_DATA_CC);
+ zend_fetch_dimension_address_read_IS(result, container, dim, IS_TMP_VAR NO_EXECUTE_DATA_CC);
} else {
- zend_fetch_dimension_address_read_R(result, container, dim, IS_CONST NO_EXECUTE_DATA_CC);
+ zend_fetch_dimension_address_read_R(result, container, dim, IS_TMP_VAR NO_EXECUTE_DATA_CC);
}
}