From: Rob Richards Date: Wed, 10 Sep 2008 15:39:43 +0000 (+0000) Subject: fix bug #46029 (Segfault in DOMText when using with Reflection) X-Git-Tag: BEFORE_HEAD_NS_CHANGE~444 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=e362e663756fc9497b054a6cd20a3380c32abab1;p=php fix bug #46029 (Segfault in DOMText when using with Reflection) --- diff --git a/ext/dom/cdatasection.c b/ext/dom/cdatasection.c index 29a58894a9..4e6d2ba0f8 100644 --- a/ext/dom/cdatasection.c +++ b/ext/dom/cdatasection.c @@ -72,7 +72,7 @@ PHP_METHOD(domcdatasection, __construct) intern = (dom_object *)zend_object_store_get_object(id TSRMLS_CC); if (intern != NULL) { - oldnode = (xmlNodePtr)intern->ptr; + oldnode = dom_object_get_node(intern); if (oldnode != NULL) { php_libxml_node_free_resource(oldnode TSRMLS_CC); } diff --git a/ext/dom/comment.c b/ext/dom/comment.c index 09b550a60e..76b37f4002 100644 --- a/ext/dom/comment.c +++ b/ext/dom/comment.c @@ -72,7 +72,7 @@ PHP_METHOD(domcomment, __construct) intern = (dom_object *)zend_object_store_get_object(id TSRMLS_CC); if (intern != NULL) { - oldnode = (xmlNodePtr)intern->ptr; + oldnode = dom_object_get_node(intern); if (oldnode != NULL) { php_libxml_node_free_resource(oldnode TSRMLS_CC); } diff --git a/ext/dom/documentfragment.c b/ext/dom/documentfragment.c index 11737563f6..0748655cc5 100644 --- a/ext/dom/documentfragment.c +++ b/ext/dom/documentfragment.c @@ -75,7 +75,7 @@ PHP_METHOD(domdocumentfragment, __construct) intern = (dom_object *)zend_object_store_get_object(id TSRMLS_CC); if (intern != NULL) { - oldnode = (xmlNodePtr)intern->ptr; + oldnode = dom_object_get_node(intern); if (oldnode != NULL) { php_libxml_node_free_resource(oldnode TSRMLS_CC); } diff --git a/ext/dom/processinginstruction.c b/ext/dom/processinginstruction.c index 2c427bc014..02027afcd6 100644 --- a/ext/dom/processinginstruction.c +++ b/ext/dom/processinginstruction.c @@ -79,7 +79,7 @@ PHP_METHOD(domprocessinginstruction, __construct) intern = (dom_object *)zend_object_store_get_object(id TSRMLS_CC); if (intern != NULL) { - oldnode = (xmlNodePtr)intern->ptr; + oldnode = dom_object_get_node(intern); if (oldnode != NULL) { php_libxml_node_free_resource(oldnode TSRMLS_CC); } diff --git a/ext/dom/text.c b/ext/dom/text.c index 214553abd6..06b54a6142 100644 --- a/ext/dom/text.c +++ b/ext/dom/text.c @@ -91,7 +91,7 @@ PHP_METHOD(domtext, __construct) intern = (dom_object *)zend_object_store_get_object(id TSRMLS_CC); if (intern != NULL) { - oldnode = (xmlNodePtr)intern->ptr; + oldnode = dom_object_get_node(intern); if (oldnode != NULL) { php_libxml_node_free_resource(oldnode TSRMLS_CC); }