summaryrefslogtreecommitdiff
path: root/Zend/zend_execute_API.c
diff options
context:
space:
mode:
authorDmitry Stogov <dmitry@zend.com>2013-12-10 14:19:17 +0400
committerDmitry Stogov <dmitry@zend.com>2013-12-10 14:19:17 +0400
commit5a87b7ff39bbf427807c46d1e51e2654259ad394 (patch)
tree421d3f5a7655d5586f67d4c71561fba9eaf597f0 /Zend/zend_execute_API.c
parent5ad11174196760ad9aa4c94c08e0e58c72eb9cb9 (diff)
downloadphp-git-5a87b7ff39bbf427807c46d1e51e2654259ad394.tar.gz
Fixed bug #66252 (Problems in AST evaluation invalidating valid parent:: reference. Constant expessions have to be evaluated in context of defining class).
Diffstat (limited to 'Zend/zend_execute_API.c')
-rw-r--r--Zend/zend_execute_API.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/Zend/zend_execute_API.c b/Zend/zend_execute_API.c
index bcce7418d5..82689ed7d6 100644
--- a/Zend/zend_execute_API.c
+++ b/Zend/zend_execute_API.c
@@ -593,7 +593,7 @@ ZEND_API int zval_update_constant_ex(zval **pp, void *arg, zend_class_entry *sco
continue;
}
if (str_index[str_index_len - 2] == IS_CONSTANT_AST) {
- zend_ast_evaluate(&const_value, *(zend_ast **)str_index TSRMLS_CC);
+ zend_ast_evaluate(&const_value, *(zend_ast **)str_index, scope TSRMLS_CC);
zend_ast_destroy(*(zend_ast **)str_index);
} else if (!zend_get_constant_ex(str_index, str_index_len - 3, &const_value, scope, str_index[str_index_len - 2] TSRMLS_CC)) {
char *actual;
@@ -667,7 +667,7 @@ ZEND_API int zval_update_constant_ex(zval **pp, void *arg, zend_class_entry *sco
SEPARATE_ZVAL_IF_NOT_REF(pp);
p = *pp;
- zend_ast_evaluate(&const_value, Z_AST_P(p) TSRMLS_CC);
+ zend_ast_evaluate(&const_value, Z_AST_P(p), scope TSRMLS_CC);
if (inline_change) {
zend_ast_destroy(Z_AST_P(p));
}