diff options
author | Yiduo (David) Wang <davidw@php.net> | 2007-10-07 05:22:07 +0000 |
---|---|---|
committer | Yiduo (David) Wang <davidw@php.net> | 2007-10-07 05:22:07 +0000 |
commit | 4b4d634cb956de1efc13c8ed9b243fe1a85f783b (patch) | |
tree | eaa8d691de244aff3ee68fd3c23f769f02fa4446 /ext/soap/php_encoding.c | |
parent | ca4c55ad3a673257925bd9b458683c4f0e60e755 (diff) | |
download | php-git-4b4d634cb956de1efc13c8ed9b243fe1a85f783b.tar.gz |
MFH: Added macros for managing zval refcounts and is_ref statuses
Diffstat (limited to 'ext/soap/php_encoding.c')
-rw-r--r-- | ext/soap/php_encoding.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/ext/soap/php_encoding.c b/ext/soap/php_encoding.c index 2f7008b5b2..b48f61591b 100644 --- a/ext/soap/php_encoding.c +++ b/ext/soap/php_encoding.c @@ -346,8 +346,8 @@ static zend_bool soap_check_xml_ref(zval **data, xmlNodePtr node TSRMLS_DC) if (*data != *data_ptr) { zval_ptr_dtor(data); *data = *data_ptr; - (*data)->is_ref = 1; - (*data)->refcount++; + Z_SET_ISREF_PP(data); + Z_ADDREF_PP(data); return 1; } } else { @@ -1195,7 +1195,7 @@ static void set_zval_property(zval* object, char* name, zval* val TSRMLS_DC) old_scope = EG(scope); EG(scope) = Z_OBJCE_P(object); #ifdef ZEND_ENGINE_2 - val->refcount--; + Z_DELREF_P(val); #endif add_property_zval(object, name, val); EG(scope) = old_scope; @@ -1621,7 +1621,7 @@ static zval *to_zval_object_ex(encodeTypePtr type, xmlNodePtr data, zend_class_e MAKE_STD_ZVAL(arr); array_init(arr); - prop->refcount++; + Z_ADDREF_P(prop); add_next_index_zval(arr, prop); set_zval_property(ret, (char*)trav->name, arr TSRMLS_CC); prop = arr; @@ -2843,7 +2843,7 @@ static zval *guess_zval_convert(encodeTypePtr type, xmlNodePtr data) object_init_ex(soapvar, soap_var_class_entry); add_property_long(soapvar, "enc_type", enc->details.type); #ifdef ZEND_ENGINE_2 - ret->refcount--; + Z_DELREF_P(ret); #endif add_property_zval(soapvar, "enc_value", ret); parse_namespace(type_name, &cptype, &ns); |