diff options
| author | Dmitry Stogov <dmitry@zend.com> | 2014-03-05 13:55:56 +0400 |
|---|---|---|
| committer | Dmitry Stogov <dmitry@zend.com> | 2014-03-05 13:55:56 +0400 |
| commit | 37337373287544f39d696c2fb357a56e99e6cecc (patch) | |
| tree | de36b9e92ed66ada6c24179a3bd68695f603f00f /Zend/zend_object_handlers.c | |
| parent | dc889b69ef8947a87a93a59a24013d972b313158 (diff) | |
| download | php-git-37337373287544f39d696c2fb357a56e99e6cecc.tar.gz | |
Handle interned strings as non-refcounted scalars
Diffstat (limited to 'Zend/zend_object_handlers.c')
| -rw-r--r-- | Zend/zend_object_handlers.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/Zend/zend_object_handlers.c b/Zend/zend_object_handlers.c index 2205ab2f1e..1893e73455 100644 --- a/Zend/zend_object_handlers.c +++ b/Zend/zend_object_handlers.c @@ -597,7 +597,7 @@ found: ZVAL_COPY_VALUE(&garbage, variable_ptr); /* if we assign referenced variable, we should separate it */ - if (IS_REFCOUNTED(Z_TYPE_P(value))) { + if (Z_REFCOUNTED_P(value)) { Z_ADDREF_P(value); if (Z_ISREF_P(value)) { SEPARATE_ZVAL(value); @@ -637,7 +637,7 @@ found: } } else if (EXPECTED(property_info != NULL)) { /* if we assign referenced variable, we should separate it */ - if (IS_REFCOUNTED(Z_TYPE_P(value))) { + if (Z_REFCOUNTED_P(value)) { if (Z_ISREF_P(value)) { ZVAL_DUP(value, Z_REFVAL_P(value)); } else { @@ -1494,7 +1494,7 @@ found: zend_std_call_getter(object, member, &rv TSRMLS_CC); (*guard) &= ~IN_GET; if (Z_TYPE(rv) != IS_UNDEF) { - Z_ADDREF(rv); + if (Z_REFCOUNTED(rv)) Z_ADDREF(rv); result = i_zend_is_true(&rv TSRMLS_CC); zval_ptr_dtor(&rv); } else { |
