From 15846ff115722b2f95d699abf07141d774b0e2cd Mon Sep 17 00:00:00 2001 From: Nikita Popov Date: Wed, 17 Jun 2020 12:34:04 +0200 Subject: Add ZVAL_OBJ_COPY macro For the common ZVAL_OBJ + GC_ADDREF pattern. This mirrors the existing ZVAL_STR_COPY API. --- ext/dom/php_dom.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) (limited to 'ext/dom/php_dom.c') diff --git a/ext/dom/php_dom.c b/ext/dom/php_dom.c index 9dc50ac287..c90475df1a 100644 --- a/ext/dom/php_dom.c +++ b/ext/dom/php_dom.c @@ -997,8 +997,7 @@ void dom_namednode_iter(dom_object *basenode, int ntype, dom_object *intern, xml ZEND_ASSERT(basenode != NULL); - ZVAL_OBJ(&mapptr->baseobj_zv, &basenode->std); - Z_ADDREF(mapptr->baseobj_zv); + ZVAL_OBJ_COPY(&mapptr->baseobj_zv, &basenode->std); mapptr->baseobj = basenode; mapptr->nodetype = ntype; @@ -1136,8 +1135,7 @@ PHP_DOM_EXPORT zend_bool php_dom_create_object(xmlNodePtr obj, zval *return_valu } if ((intern = (dom_object *) php_dom_object_get_data((void *) obj))) { - GC_ADDREF(&intern->std); - ZVAL_OBJ(return_value, &intern->std); + ZVAL_OBJ_COPY(return_value, &intern->std); return 1; } -- cgit v1.2.1