diff options
| author | Dmitry Stogov <dmitry@php.net> | 2005-06-06 11:20:46 +0000 |
|---|---|---|
| committer | Dmitry Stogov <dmitry@php.net> | 2005-06-06 11:20:46 +0000 |
| commit | 91a344a5046651ece0a9f91411175a3c31d77c20 (patch) | |
| tree | 3e8185718e59613478029d1eac0b5e313f3a1d53 /Zend/zend_compile.c | |
| parent | ce23692663fe377111d79bc03cba88c21626841c (diff) | |
| download | php-git-91a344a5046651ece0a9f91411175a3c31d77c20.tar.gz | |
Fixed bug #32428 (The @ warning error supression operator is broken)
Diffstat (limited to 'Zend/zend_compile.c')
| -rw-r--r-- | Zend/zend_compile.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/Zend/zend_compile.c b/Zend/zend_compile.c index 31cded48c5..cdd56f6c0d 100644 --- a/Zend/zend_compile.c +++ b/Zend/zend_compile.c @@ -336,7 +336,9 @@ void fetch_simple_variable_ex(znode *result, znode *varname, int bp, zend_uchar if (varname->op_type == IS_CONST && varname->u.constant.type == IS_STRING && !zend_is_auto_global(varname->u.constant.value.str.val, varname->u.constant.value.str.len TSRMLS_CC) && !(varname->u.constant.value.str.len == (sizeof("this")-1) && - !memcmp(varname->u.constant.value.str.val, "this", sizeof("this")))) { + !memcmp(varname->u.constant.value.str.val, "this", sizeof("this"))) && + (CG(active_op_array)->last == 0 || + CG(active_op_array)->opcodes[CG(active_op_array)->last-1].opcode != ZEND_BEGIN_SILENCE)) { result->op_type = IS_CV; result->u.var = lookup_cv(CG(active_op_array), varname->u.constant.value.str.val, varname->u.constant.value.str.len); result->u.EA.type = 0; |
