rrichards Sun Jan 2 07:08:41 2005 EDT
Modified files:
/php-src/ext/libxml libxml.c
Log:
Fixed bug #31361 (simplexml/domxml segfault when adding node twice)
http://cvs.php.net/diff.php/php-src/ext/libxml/libxml.c?r1=1.25&r2=1.26&ty=u
Index: php-src/ext/libxml/libxml.c
diff -u php-src/ext/libxml/libxml.c:1.25 php-src/ext/libxml/libxml.c:1.26
--- php-src/ext/libxml/libxml.c:1.25 Sun Dec 5 06:59:46 2004
+++ php-src/ext/libxml/libxml.c Sun Jan 2 07:08:41 2005
@@ -17,7 +17,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: libxml.c,v 1.25 2004/12/05 11:59:46 rrichards Exp $ */
+/* $Id: libxml.c,v 1.26 2005/01/02 12:08:41 rrichards Exp $ */
#define IS_EXT_MODULE
@@ -725,6 +725,10 @@
ret_refcount = php_libxml_decrement_node_ptr(object TSRMLS_CC);
if (ret_refcount == 0) {
php_libxml_node_free_resource(nodep TSRMLS_CC);
+ } else {
+ if (obj_node && object == obj_node->_private) {
+ obj_node->_private = NULL;
+ }
}
/* Safe to call as if the resource were freed then doc pointer
is NULL */
php_libxml_decrement_doc_ref(object TSRMLS_CC);
--
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php