cvs: php4(PHP_4_2_0) /ext/domxml php_domxml.c

From: Date: Mon, 19 Aug 2002 07:27:34 +0000
Subject: cvs: php4(PHP_4_2_0) /ext/domxml php_domxml.c
Groups: php.cvs 
Request: Send a blank email to php-cvs+get-13457@lists.php.net to get a copy of this message
chregu Mon Aug 19 03:27:34 2002 EDT Modified files: (Branch: PHP_4_2_0) /php4/ext/domxml php_domxml.c Log: MFH 1.174 (Make domxml_xslt_process() working again.) MDH 1.187 (DOMXML crash on removing previously created attributes) Index: php4/ext/domxml/php_domxml.c diff -u php4/ext/domxml/php_domxml.c:1.118.2.12 php4/ext/domxml/php_domxml.c:1.118.2.13 --- php4/ext/domxml/php_domxml.c:1.118.2.12 Wed Jun 12 07:13:35 2002 +++ php4/ext/domxml/php_domxml.c Mon Aug 19 03:27:33 2002 @@ -16,7 +16,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: php_domxml.c,v 1.118.2.12 2002/06/12 11:13:35 chregu Exp $ */ +/* $Id: php_domxml.c,v 1.118.2.13 2002/08/19 07:27:33 chregu Exp $ */ /* TODO * - Support Notation Nodes @@ -589,6 +589,16 @@ } +static void php_free_xml_attr(zend_rsrc_list_entry *rsrc TSRMLS_DC) +{ + xmlNodePtr node = (xmlNodePtr) rsrc->ptr; + if (node->parent == NULL) { + node_wrapper_dtor(node); + xmlFreeProp((xmlAttrPtr) node); + } else { + node_wrapper_dtor(node); + } +} #if defined(LIBXML_XPATH_ENABLED) static void php_free_xpath_context(zend_rsrc_list_entry *rsrc TSRMLS_DC) @@ -1257,7 +1267,7 @@ */ le_domxmlnodep = zend_register_list_destructors_ex(php_free_xml_node, NULL, "domnode", module_number); le_domxmlcommentp = zend_register_list_destructors_ex(php_free_xml_node, NULL, "domnode", module_number); - le_domxmlattrp = zend_register_list_destructors_ex(php_free_xml_node, NULL, "domattribute", module_number); + le_domxmlattrp = zend_register_list_destructors_ex(php_free_xml_attr, NULL, "domattribute", module_number); le_domxmltextp = zend_register_list_destructors_ex(php_free_xml_node, NULL, "domtext", module_number); le_domxmlelementp = zend_register_list_destructors_ex(php_free_xml_node, NULL, "domelement", module_number); le_domxmldtdp = zend_register_list_destructors_ex(php_free_xml_node, NULL, "domdtd", module_number); @@ -4277,7 +4287,7 @@ - test other stuff - check xsltsp->errors ??? */ - zval *rv, *idxsl, *idxml, *idparams = NULL; + zval *rv = NULL, *idxsl, *idxml, *idparams = NULL; zend_bool xpath_params = 0; xsltStylesheetPtr xsltstp; xmlDocPtr xmldocp;

« previous php.cvs (#13457) next »