summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNikita Popov <nikita.ppv@gmail.com>2019-07-12 16:50:43 +0200
committerNikita Popov <nikita.ppv@gmail.com>2019-07-12 16:50:43 +0200
commita7de2af46ccff1207a7008602b079b92de57a9fe (patch)
tree56cc0d26afdc46cdfe60b65ba0291422683b2cb6
parent4a91f66b8f528e6d09e2c7fa04d87e2dc981bd34 (diff)
downloadphp-git-a7de2af46ccff1207a7008602b079b92de57a9fe.tar.gz
Use TRY_ADDREF/TRY_DELREF in soap
The DELREF part is a possible fix for bug #78278, the ADDREF part is a drive-by fix.
-rw-r--r--ext/soap/php_encoding.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/ext/soap/php_encoding.c b/ext/soap/php_encoding.c
index 2afb31d779..c29e967091 100644
--- a/ext/soap/php_encoding.c
+++ b/ext/soap/php_encoding.c
@@ -2269,7 +2269,7 @@ static xmlNodePtr to_xml_array(encodeTypePtr type, zval *data, int style, xmlNod
} else {
add_next_index_zval(&array_copy, val);
}
- Z_ADDREF_P(val);
+ Z_TRY_ADDREF_P(val);
iter->funcs->move_forward(iter);
if (EG(exception)) {
@@ -2850,7 +2850,7 @@ static zval *guess_zval_convert(zval *ret, encodeTypePtr type, xmlNodePtr data)
object_init_ex(&soapvar, soap_var_class_entry);
add_property_long(&soapvar, "enc_type", enc->details.type);
- Z_DELREF_P(ret);
+ Z_TRY_DELREF_P(ret);
add_property_zval(&soapvar, "enc_value", ret);
parse_namespace(type_name, &cptype, &ns);
nsptr = xmlSearchNs(data->doc, data, BAD_CAST(ns));