com php-src: Fix #70029: nodeValue of DOMElement list content of children nodes: ext/dom/node.c ext/dom/tests/bug28721.phpt
ext/dom/tests/bug42082.phpt ext/dom/tests/bug69846.phpt ext/dom/tests/bug70029.phpt ext/dom/tests/dom001.phpt
| From: | Christoph Michael Becker | Date: | Fri, 04 Sep 2015 23:52:41 +0000 |
| Subject: | com php-src: Fix #70029: nodeValue of DOMElement list content of children nodes: ext/dom/node.c ext/dom/tests/bug28721.phpt ext/dom/tests/bug42082.phpt ext/dom/tests/bug69846.phpt ext/dom/tests/bug70029.phpt ext/dom/tests/dom001.phpt |
||
| Groups: | php.cvs | ||
| Request: | Send a blank email to php-cvs+get-88920@lists.php.net to get a copy of this message | ||
Commit: 25a52d98d7cb2d4f3b3636eac45c71a1ae03c760
Author: Christoph M. Becker <cmbecker69@gmx.de> Fri, 10 Jul 2015 13:42:09 +0200
Committer: Christoph M. Becker <cmb@php.net> Sat, 5 Sep 2015 01:52:41 +0200
Parents: 3be54e12d5c85150c1a325b02f33a18a93190e15
Branches: master
Link: http://git.php.net/?p=php-src.git;a=commitdiff;h=25a52d98d7cb2d4f3b3636eac45c71a1ae03c760
Log:
Fix #70029: nodeValue of DOMElement list content of children nodes
According to the W3C DOM Core Level 3 specification DOMElement::nodeValue is
supposed to yield null, but currently the DOM extension yield the result of
calling xmlNodeGetContent(), what is the concatenation of the values of the
children of the element. This patch fixes the non standard behavior.
Bugs:
https://bugs.php.net/70029
Changed paths:
M ext/dom/node.c
M ext/dom/tests/bug28721.phpt
M ext/dom/tests/bug42082.phpt
M ext/dom/tests/bug69846.phpt
A ext/dom/tests/bug70029.phpt
M ext/dom/tests/dom001.phpt
diff --git a/ext/dom/node.c b/ext/dom/node.c index 2f35e01..08e4332 100644 --- a/ext/dom/node.c +++ b/ext/dom/node.c @@ -297,7 +297,6 @@ int dom_node_node_value_read(dom_object *obj, zval *retval) switch (nodep->type) { case XML_ATTRIBUTE_NODE: case XML_TEXT_NODE: - case XML_ELEMENT_NODE: case XML_COMMENT_NODE: case XML_CDATA_SECTION_NODE: case XML_PI_NODE: diff --git a/ext/dom/tests/bug28721.phpt b/ext/dom/tests/bug28721.phpt index 464498e..cd55150 100644 --- a/ext/dom/tests/bug28721.phpt +++ b/ext/dom/tests/bug28721.phpt @@ -119,66 +119,65 @@ print_node_r($p); ?> --EXPECT-- - -name (value): p ( t1 X t2 xxx ) +name (value): p () parent: NULL previousSibling: NULL nextSibling: NULL name (value): #text ( t1 ) - parent: name (value): p ( t1 X t2 xxx ) + parent: name (value): p () previousSibling: NULL - nextSibling: name (value): b (X) + nextSibling: name (value): b () - name (value): b (X) - parent: name (value): p ( t1 X t2 xxx ) + name (value): b () + parent: name (value): p () previousSibling: name (value): #text ( t1 ) nextSibling: name (value): #text ( t2 ) name (value): #text (X) - parent: name (value): b (X) + parent: name (value): b () previousSibling: NULL nextSibling: NULL name (value): #text ( t2 ) - parent: name (value): p ( t1 X t2 xxx ) - previousSibling: name (value): b (X) + parent: name (value): p () + previousSibling: name (value): b () nextSibling: name (value): #text ( xxx ) name (value): #text ( xxx ) - parent: name (value): p ( t1 X t2 xxx ) + parent: name (value): p () previousSibling: name (value): #text ( t2 ) nextSibling: NULL Append t1 to p: -name (value): p (X t2 xxx t1 ) +name (value): p () parent: NULL previousSibling: NULL nextSibling: NULL - name (value): b (X) - parent: name (value): p (X t2 xxx t1 ) + name (value): b () + parent: name (value): p () previousSibling: NULL nextSibling: name (value): #text ( t2 ) name (value): #text (X) - parent: name (value): b (X) + parent: name (value): b () previousSibling: NULL nextSibling: NULL name (value): #text ( t2 ) - parent: name (value): p (X t2 xxx t1 ) - previousSibling: name (value): b (X) + parent: name (value): p () + previousSibling: name (value): b () nextSibling: name (value): #text ( xxx ) name (value): #text ( xxx ) - parent: name (value): p (X t2 xxx t1 ) + parent: name (value): p () previousSibling: name (value): #text ( t2 ) nextSibling: name (value): #text ( t1 ) name (value): #text ( t1 ) - parent: name (value): p (X t2 xxx t1 ) + parent: name (value): p () previousSibling: name (value): #text ( xxx ) nextSibling: NULL @@ -186,18 +185,18 @@ t1 == ret: bool(true) div: -name (value): div ( t3 t4 xxx ) +name (value): div () parent: NULL previousSibling: NULL nextSibling: NULL name (value): #text ( t3 ) - parent: name (value): div ( t3 t4 xxx ) + parent: name (value): div () previousSibling: NULL nextSibling: name (value): b () name (value): b () - parent: name (value): div ( t3 t4 xxx ) + parent: name (value): div () previousSibling: name (value): #text ( t3 ) nextSibling: name (value): #text ( t4 ) @@ -207,34 +206,34 @@ nextSibling: NULL nextSibling: NULL name (value): #text ( t4 ) - parent: name (value): div ( t3 t4 xxx ) + parent: name (value): div () previousSibling: name (value): b () nextSibling: name (value): #text ( xxx ) name (value): #text ( xxx ) - parent: name (value): div ( t3 t4 xxx ) + parent: name (value): div () previousSibling: name (value): #text ( t4 ) nextSibling: NULL Insert t4 before t3: -name (value): div ( t4 t3 xxx ) +name (value): div () parent: NULL previousSibling: NULL nextSibling: NULL name (value): #text ( t4 ) - parent: name (value): div ( t4 t3 xxx ) + parent: name (value): div () previousSibling: NULL nextSibling: name (value): #text ( t3 ) name (value): #text ( t3 ) - parent: name (value): div ( t4 t3 xxx ) + parent: name (value): div () previousSibling: name (value): #text ( t4 ) nextSibling: name (value): b () name (value): b () - parent: name (value): div ( t4 t3 xxx ) + parent: name (value): div () previousSibling: name (value): #text ( t3 ) nextSibling: name (value): #text ( xxx ) @@ -244,40 +243,40 @@ nextSibling: NULL nextSibling: NULL name (value): #text ( xxx ) - parent: name (value): div ( t4 t3 xxx ) + parent: name (value): div () previousSibling: name (value): b () nextSibling: NULL p: -name (value): p (X t2 xxx t1 ) +name (value): p () parent: NULL previousSibling: NULL nextSibling: NULL - name (value): b (X) - parent: name (value): p (X t2 xxx t1 ) + name (value): b () + parent: name (value): p () previousSibling: NULL nextSibling: name (value): #text ( t2 ) name (value): #text (X) - parent: name (value): b (X) + parent: name (value): b () previousSibling: NULL nextSibling: NULL name (value): #text ( t2 ) - parent: name (value): p (X t2 xxx t1 ) - previousSibling: name (value): b (X) + parent: name (value): p () + previousSibling: name (value): b () nextSibling: name (value): #text ( xxx ) name (value): #text ( xxx ) - parent: name (value): p (X t2 xxx t1 ) + parent: name (value): p () previousSibling: name (value): #text ( t2 ) nextSibling: name (value): #text ( t1 ) name (value): #text ( t1 ) - parent: name (value): p (X t2 xxx t1 ) + parent: name (value): p () previousSibling: name (value): #text ( xxx ) nextSibling: NULL @@ -291,73 +290,73 @@ nextSibling: NULL name (value): #text ( t5 ) parent: name (value): #document-fragment () previousSibling: NULL - nextSibling: name (value): i ( frob ) + nextSibling: name (value): i () - name (value): i ( frob ) + name (value): i () parent: name (value): #document-fragment () previousSibling: name (value): #text ( t5 ) nextSibling: name (value): #text ( t6 ) name (value): #text ( frob ) - parent: name (value): i ( frob ) + parent: name (value): i () previousSibling: NULL nextSibling: NULL name (value): #text ( t6 ) parent: name (value): #document-fragment () - previousSibling: name (value): i ( frob ) + previousSibling: name (value): i () nextSibling: NULL Appending fragment to p: -name (value): p (X t2 xxx t1 t5 frob t6 ) +name (value): p () parent: NULL previousSibling: NULL nextSibling: NULL - name (value): b (X) - parent: name (value): p (X t2 xxx t1 t5 frob t6 ) + name (value): b () + parent: name (value): p () previousSibling: NULL nextSibling: name (value): #text ( t2 ) name (value): #text (X) - parent: name (value): b (X) + parent: name (value): b () previousSibling: NULL nextSibling: NULL name (value): #text ( t2 ) - parent: name (value): p (X t2 xxx t1 t5 frob t6 ) - previousSibling: name (value): b (X) + parent: name (value): p () + previousSibling: name (value): b () nextSibling: name (value): #text ( xxx ) name (value): #text ( xxx ) - parent: name (value): p (X t2 xxx t1 t5 frob t6 ) + parent: name (value): p () previousSibling: name (value): #text ( t2 ) nextSibling: name (value): #text ( t1 ) name (value): #text ( t1 ) - parent: name (value): p (X t2 xxx t1 t5 frob t6 ) + parent: name (value): p () previousSibling: name (value): #text ( xxx ) nextSibling: name (value): #text ( t5 ) name (value): #text ( t5 ) - parent: name (value): p (X t2 xxx t1 t5 frob t6 ) + parent: name (value): p () previousSibling: name (value): #text ( t1 ) - nextSibling: name (value): i ( frob ) + nextSibling: name (value): i () - name (value): i ( frob ) - parent: name (value): p (X t2 xxx t1 t5 frob t6 ) + name (value): i () + parent: name (value): p () previousSibling: name (value): #text ( t5 ) nextSibling: name (value): #text ( t6 ) name (value): #text ( frob ) - parent: name (value): i ( frob ) + parent: name (value): i () previousSibling: NULL nextSibling: NULL name (value): #text ( t6 ) - parent: name (value): p (X t2 xxx t1 t5 frob t6 ) - previousSibling: name (value): i ( frob ) + parent: name (value): p () + previousSibling: name (value): i () nextSibling: NULL Fragment: @@ -369,23 +368,23 @@ nextSibling: NULL div: -name (value): div ( t4 t3 xxx ) +name (value): div () parent: NULL previousSibling: NULL nextSibling: NULL name (value): #text ( t4 ) - parent: name (value): div ( t4 t3 xxx ) + parent: name (value): div () previousSibling: NULL nextSibling: name (value): #text ( t3 ) name (value): #text ( t3 ) - parent: name (value): div ( t4 t3 xxx ) + parent: name (value): div () previousSibling: name (value): #text ( t4 ) nextSibling: name (value): b () name (value): b () - parent: name (value): div ( t4 t3 xxx ) + parent: name (value): div () previousSibling: name (value): #text ( t3 ) nextSibling: name (value): #text ( xxx ) @@ -395,30 +394,30 @@ nextSibling: NULL nextSibling: NULL name (value): #text ( xxx ) - parent: name (value): div ( t4 t3 xxx ) + parent: name (value): div () previousSibling: name (value): b () nextSibling: NULL Inserting fragment before t4 Error (2) on line 109: DOMNode::insertBefore(): Document Fragment is empty -name (value): div ( t4 t3 xxx ) +name (value): div () parent: NULL previousSibling: NULL nextSibling: NULL name (value): #text ( t4 ) - parent: name (value): div ( t4 t3 xxx ) + parent: name (value): div () previousSibling: NULL nextSibling: name (value): #text ( t3 ) name (value): #text ( t3 ) - parent: name (value): div ( t4 t3 xxx ) + parent: name (value): div () previousSibling: name (value): #text ( t4 ) nextSibling: name (value): b () name (value): b () - parent: name (value): div ( t4 t3 xxx ) + parent: name (value): div () previousSibling: name (value): #text ( t3 ) nextSibling: name (value): #text ( xxx ) @@ -428,58 +427,58 @@ nextSibling: NULL nextSibling: NULL name (value): #text ( xxx ) - parent: name (value): div ( t4 t3 xxx ) + parent: name (value): div () previousSibling: name (value): b () nextSibling: NULL p: -name (value): p (X t2 xxx t1 t5 frob t6 ) +name (value): p () parent: NULL previousSibling: NULL nextSibling: NULL - name (value): b (X) - parent: name (value): p (X t2 xxx t1 t5 frob t6 ) + name (value): b () + parent: name (value): p () previousSibling: NULL nextSibling: name (value): #text ( t2 ) name (value): #text (X) - parent: name (value): b (X) + parent: name (value): b () previousSibling: NULL nextSibling: NULL name (value): #text ( t2 ) - parent: name (value): p (X t2 xxx t1 t5 frob t6 ) - previousSibling: name (value): b (X) + parent: name (value): p () + previousSibling: name (value): b () nextSibling: name (value): #text ( xxx ) name (value): #text ( xxx ) - parent: name (value): p (X t2 xxx t1 t5 frob t6 ) + parent: name (value): p () previousSibling: name (value): #text ( t2 ) nextSibling: name (value): #text ( t1 ) name (value): #text ( t1 ) - parent: name (value): p (X t2 xxx t1 t5 frob t6 ) + parent: name (value): p () previousSibling: name (value): #text ( xxx ) nextSibling: name (value): #text ( t5 ) name (value): #text ( t5 ) - parent: name (value): p (X t2 xxx t1 t5 frob t6 ) + parent: name (value): p () previousSibling: name (value): #text ( t1 ) - nextSibling: name (value): i ( frob ) + nextSibling: name (value): i () - name (value): i ( frob ) - parent: name (value): p (X t2 xxx t1 t5 frob t6 ) + name (value): i () + parent: name (value): p () previousSibling: name (value): #text ( t5 ) nextSibling: name (value): #text ( t6 ) name (value): #text ( frob ) - parent: name (value): i ( frob ) + parent: name (value): i () previousSibling: NULL nextSibling: NULL name (value): #text ( t6 ) - parent: name (value): p (X t2 xxx t1 t5 frob t6 ) - previousSibling: name (value): i ( frob ) + parent: name (value): p () + previousSibling: name (value): i () nextSibling: NULL diff --git a/ext/dom/tests/bug42082.phpt b/ext/dom/tests/bug42082.phpt index b5fc893..98fa638 100644 --- a/ext/dom/tests/bug42082.phpt +++ b/ext/dom/tests/bug42082.phpt @@ -22,10 +22,10 @@ DOMNodeList int(0) bool(true) bool(true) -string(0) "" -bool(true) +NULL bool(true) bool(false) bool(false) +bool(false) ===DONE=== diff --git a/ext/dom/tests/bug69846.phpt b/ext/dom/tests/bug69846.phpt index 08e35cd..a667a89 100644 --- a/ext/dom/tests/bug69846.phpt +++ b/ext/dom/tests/bug69846.phpt @@ -81,11 +81,7 @@ object(DOMElement)#%d (17) { ["nodeName"]=> string(5) "form1" ["nodeValue"]=> - string(39) " - Value A - Value B - Value C - " + NULL ["nodeType"]=> int(1) ["parentNode"]=> diff --git a/ext/dom/tests/bug70029.phpt b/ext/dom/tests/bug70029.phpt new file mode 100644 index 0000000..55244c6 --- /dev/null +++ b/ext/dom/tests/bug70029.phpt @@ -0,0 +1,12 @@ +--TEST-- +Bug #70029 (nodeValue of DOMElement list content of children nodes) +--SKIPIF-- +<?php require_once('skipif.inc'); ?> +--FILE-- +<?php +$doc = new DOMDocument(); +$doc->loadXml('<tag><childtag>myString</childtag></tag>'); +var_dump($doc->documentElement->nodeValue); +?> +--EXPECT-- +NULL diff --git a/ext/dom/tests/dom001.phpt b/ext/dom/tests/dom001.phpt index a0c78fb..13e8fbf 100644 --- a/ext/dom/tests/dom001.phpt +++ b/ext/dom/tests/dom001.phpt @@ -108,7 +108,7 @@ Num Children: 4 Node Name: title Node Type: 1 Num Children: 1 -Node Content: Title +Node Content: Node Name: #text Node Type: 3 @@ -142,7 +142,7 @@ Num Children: 4 Node Name: title Node Type: 1 Num Children: 1 -Node Content: Title +Node Content: Node Name: #text Node Type: 3 @@ -186,7 +186,7 @@ Node Content: en Node Name: Silly Node Type: 1 Num Children: 1 -Node Content: Symphony +Node Content: <?xml version="1.0" standalone="yes"?> <!DOCTYPE chapter SYSTEM "/share/sgml/Norman_Walsh/db3xml10/db3xml10.dtd" [ @@ -214,24 +214,24 @@ Node Content: Symphony Node Name: Silly Node Type: 1 Num Children: 1 -Node Content: Symphony +Node Content: Using elem Node Name: Silly Node Type: 1 Num Children: 1 -Node Content: Symphony +Node Content: --------- Unlink Node Node Name: Silly Node Type: 1 Num Children: 1 -Node Content: Symphony +Node Content: Node Name: title Node Type: 1 Num Children: 1 -Node Content: Title +Node Content: Node Name: #text Node Type: 3
diff --git a/ext/dom/node.c b/ext/dom/node.c index 2f35e01..08e4332 100644 --- a/ext/dom/node.c +++ b/ext/dom/node.c @@ -297,7 +297,6 @@ int dom_node_node_value_read(dom_object *obj, zval *retval) switch (nodep->type) { case XML_ATTRIBUTE_NODE: case XML_TEXT_NODE: - case XML_ELEMENT_NODE: case XML_COMMENT_NODE: case XML_CDATA_SECTION_NODE: case XML_PI_NODE: diff --git a/ext/dom/tests/bug28721.phpt b/ext/dom/tests/bug28721.phpt index 464498e..cd55150 100644 --- a/ext/dom/tests/bug28721.phpt +++ b/ext/dom/tests/bug28721.phpt @@ -119,66 +119,65 @@ print_node_r($p); ?> --EXPECT-- - -name (value): p ( t1 X t2 xxx ) +name (value): p () parent: NULL previousSibling: NULL nextSibling: NULL name (value): #text ( t1 ) - parent: name (value): p ( t1 X t2 xxx ) + parent: name (value): p () previousSibling: NULL - nextSibling: name (value): b (X) + nextSibling: name (value): b () - name (value): b (X) - parent: name (value): p ( t1 X t2 xxx ) + name (value): b () + parent: name (value): p () previousSibling: name (value): #text ( t1 ) nextSibling: name (value): #text ( t2 ) name (value): #text (X) - parent: name (value): b (X) + parent: name (value): b () previousSibling: NULL nextSibling: NULL name (value): #text ( t2 ) - parent: name (value): p ( t1 X t2 xxx ) - previousSibling: name (value): b (X) + parent: name (value): p () + previousSibling: name (value): b () nextSibling: name (value): #text ( xxx ) name (value): #text ( xxx ) - parent: name (value): p ( t1 X t2 xxx ) + parent: name (value): p () previousSibling: name (value): #text ( t2 ) nextSibling: NULL Append t1 to p: -name (value): p (X t2 xxx t1 ) +name (value): p () parent: NULL previousSibling: NULL nextSibling: NULL - name (value): b (X) - parent: name (value): p (X t2 xxx t1 ) + name (value): b () + parent: name (value): p () previousSibling: NULL nextSibling: name (value): #text ( t2 ) name (value): #text (X) - parent: name (value): b (X) + parent: name (value): b () previousSibling: NULL nextSibling: NULL name (value): #text ( t2 ) - parent: name (value): p (X t2 xxx t1 ) - previousSibling: name (value): b (X) + parent: name (value): p () + previousSibling: name (value): b () nextSibling: name (value): #text ( xxx ) name (value): #text ( xxx ) - parent: name (value): p (X t2 xxx t1 ) + parent: name (value): p () previousSibling: name (value): #text ( t2 ) nextSibling: name (value): #text ( t1 ) name (value): #text ( t1 ) - parent: name (value): p (X t2 xxx t1 ) + parent: name (value): p () previousSibling: name (value): #text ( xxx ) nextSibling: NULL @@ -186,18 +185,18 @@ t1 == ret: bool(true) div: -name (value): div ( t3 t4 xxx ) +name (value): div () parent: NULL previousSibling: NULL nextSibling: NULL name (value): #text ( t3 ) - parent: name (value): div ( t3 t4 xxx ) + parent: name (value): div () previousSibling: NULL nextSibling: name (value): b () name (value): b () - parent: name (value): div ( t3 t4 xxx ) + parent: name (value): div () previousSibling: name (value): #text ( t3 ) nextSibling: name (value): #text ( t4 ) @@ -207,34 +206,34 @@ nextSibling: NULL nextSibling: NULL name (value): #text ( t4 ) - parent: name (value): div ( t3 t4 xxx ) + parent: name (value): div () previousSibling: name (value): b () nextSibling: name (value): #text ( xxx ) name (value): #text ( xxx ) - parent: name (value): div ( t3 t4 xxx ) + parent: name (value): div () previousSibling: name (value): #text ( t4 ) nextSibling: NULL Insert t4 before t3: -name (value): div ( t4 t3 xxx ) +name (value): div () parent: NULL previousSibling: NULL nextSibling: NULL name (value): #text ( t4 ) - parent: name (value): div ( t4 t3 xxx ) + parent: name (value): div () previousSibling: NULL nextSibling: name (value): #text ( t3 ) name (value): #text ( t3 ) - parent: name (value): div ( t4 t3 xxx ) + parent: name (value): div () previousSibling: name (value): #text ( t4 ) nextSibling: name (value): b () name (value): b () - parent: name (value): div ( t4 t3 xxx ) + parent: name (value): div () previousSibling: name (value): #text ( t3 ) nextSibling: name (value): #text ( xxx ) @@ -244,40 +243,40 @@ nextSibling: NULL nextSibling: NULL name (value): #text ( xxx ) - parent: name (value): div ( t4 t3 xxx ) + parent: name (value): div () previousSibling: name (value): b () nextSibling: NULL p: -name (value): p (X t2 xxx t1 ) +name (value): p () parent: NULL previousSibling: NULL nextSibling: NULL - name (value): b (X) - parent: name (value): p (X t2 xxx t1 ) + name (value): b () + parent: name (value): p () previousSibling: NULL nextSibling: name (value): #text ( t2 ) name (value): #text (X) - parent: name (value): b (X) + parent: name (value): b () previousSibling: NULL nextSibling: NULL name (value): #text ( t2 ) - parent: name (value): p (X t2 xxx t1 ) - previousSibling: name (value): b (X) + parent: name (value): p () + previousSibling: name (value): b () nextSibling: name (value): #text ( xxx ) name (value): #text ( xxx ) - parent: name (value): p (X t2 xxx t1 ) + parent: name (value): p () previousSibling: name (value): #text ( t2 ) nextSibling: name (value): #text ( t1 ) name (value): #text ( t1 ) - parent: name (value): p (X t2 xxx t1 ) + parent: name (value): p () previousSibling: name (value): #text ( xxx ) nextSibling: NULL @@ -291,73 +290,73 @@ nextSibling: NULL name (value): #text ( t5 ) parent: name (value): #document-fragment () previousSibling: NULL - nextSibling: name (value): i ( frob ) + nextSibling: name (value): i () - name (value): i ( frob ) + name (value): i () parent: name (value): #document-fragment () previousSibling: name (value): #text ( t5 ) nextSibling: name (value): #text ( t6 ) name (value): #text ( frob ) - parent: name (value): i ( frob ) + parent: name (value): i () previousSibling: NULL nextSibling: NULL name (value): #text ( t6 ) parent: name (value): #document-fragment () - previousSibling: name (value): i ( frob ) + previousSibling: name (value): i () nextSibling: NULL Appending fragment to p: -name (value): p (X t2 xxx t1 t5 frob t6 ) +name (value): p () parent: NULL previousSibling: NULL nextSibling: NULL - name (value): b (X) - parent: name (value): p (X t2 xxx t1 t5 frob t6 ) + name (value): b () + parent: name (value): p () previousSibling: NULL nextSibling: name (value): #text ( t2 ) name (value): #text (X) - parent: name (value): b (X) + parent: name (value): b () previousSibling: NULL nextSibling: NULL name (value): #text ( t2 ) - parent: name (value): p (X t2 xxx t1 t5 frob t6 ) - previousSibling: name (value): b (X) + parent: name (value): p () + previousSibling: name (value): b () nextSibling: name (value): #text ( xxx ) name (value): #text ( xxx ) - parent: name (value): p (X t2 xxx t1 t5 frob t6 ) + parent: name (value): p () previousSibling: name (value): #text ( t2 ) nextSibling: name (value): #text ( t1 ) name (value): #text ( t1 ) - parent: name (value): p (X t2 xxx t1 t5 frob t6 ) + parent: name (value): p () previousSibling: name (value): #text ( xxx ) nextSibling: name (value): #text ( t5 ) name (value): #text ( t5 ) - parent: name (value): p (X t2 xxx t1 t5 frob t6 ) + parent: name (value): p () previousSibling: name (value): #text ( t1 ) - nextSibling: name (value): i ( frob ) + nextSibling: name (value): i () - name (value): i ( frob ) - parent: name (value): p (X t2 xxx t1 t5 frob t6 ) + name (value): i () + parent: name (value): p () previousSibling: name (value): #text ( t5 ) nextSibling: name (value): #text ( t6 ) name (value): #text ( frob ) - parent: name (value): i ( frob ) + parent: name (value): i () previousSibling: NULL nextSibling: NULL name (value): #text ( t6 ) - parent: name (value): p (X t2 xxx t1 t5 frob t6 ) - previousSibling: name (value): i ( frob ) + parent: name (value): p () + previousSibling: name (value): i () nextSibling: NULL Fragment: @@ -369,23 +368,23 @@ nextSibling: NULL div: -name (value): div ( t4 t3 xxx ) +name (value): div () parent: NULL previousSibling: NULL nextSibling: NULL name (value): #text ( t4 ) - parent: name (value): div ( t4 t3 xxx ) + parent: name (value): div () previousSibling: NULL nextSibling: name (value): #text ( t3 ) name (value): #text ( t3 ) - parent: name (value): div ( t4 t3 xxx ) + parent: name (value): div () previousSibling: name (value): #text ( t4 ) nextSibling: name (value): b () name (value): b () - parent: name (value): div ( t4 t3 xxx ) + parent: name (value): div () previousSibling: name (value): #text ( t3 ) nextSibling: name (value): #text ( xxx ) @@ -395,30 +394,30 @@ nextSibling: NULL nextSibling: NULL name (value): #text ( xxx ) - parent: name (value): div ( t4 t3 xxx ) + parent: name (value): div () previousSibling: name (value): b () nextSibling: NULL Inserting fragment before t4 Error (2) on line 109: DOMNode::insertBefore(): Document Fragment is empty -name (value): div ( t4 t3 xxx ) +name (value): div () parent: NULL previousSibling: NULL nextSibling: NULL name (value): #text ( t4 ) - parent: name (value): div ( t4 t3 xxx ) + parent: name (value): div () previousSibling: NULL nextSibling: name (value): #text ( t3 ) name (value): #text ( t3 ) - parent: name (value): div ( t4 t3 xxx ) + parent: name (value): div () previousSibling: name (value): #text ( t4 ) nextSibling: name (value): b () name (value): b () - parent: name (value): div ( t4 t3 xxx ) + parent: name (value): div () previousSibling: name (value): #text ( t3 ) nextSibling: name (value): #text ( xxx ) @@ -428,58 +427,58 @@ nextSibling: NULL nextSibling: NULL name (value): #text ( xxx ) - parent: name (value): div ( t4 t3 xxx ) + parent: name (value): div () previousSibling: name (value): b () nextSibling: NULL p: -name (value): p (X t2 xxx t1 t5 frob t6 ) +name (value): p () parent: NULL previousSibling: NULL nextSibling: NULL - name (value): b (X) - parent: name (value): p (X t2 xxx t1 t5 frob t6 ) + name (value): b () + parent: name (value): p () previousSibling: NULL nextSibling: name (value): #text ( t2 ) name (value): #text (X) - parent: name (value): b (X) + parent: name (value): b () previousSibling: NULL nextSibling: NULL name (value): #text ( t2 ) - parent: name (value): p (X t2 xxx t1 t5 frob t6 ) - previousSibling: name (value): b (X) + parent: name (value): p () + previousSibling: name (value): b () nextSibling: name (value): #text ( xxx ) name (value): #text ( xxx ) - parent: name (value): p (X t2 xxx t1 t5 frob t6 ) + parent: name (value): p () previousSibling: name (value): #text ( t2 ) nextSibling: name (value): #text ( t1 ) name (value): #text ( t1 ) - parent: name (value): p (X t2 xxx t1 t5 frob t6 ) + parent: name (value): p () previousSibling: name (value): #text ( xxx ) nextSibling: name (value): #text ( t5 ) name (value): #text ( t5 ) - parent: name (value): p (X t2 xxx t1 t5 frob t6 ) + parent: name (value): p () previousSibling: name (value): #text ( t1 ) - nextSibling: name (value): i ( frob ) + nextSibling: name (value): i () - name (value): i ( frob ) - parent: name (value): p (X t2 xxx t1 t5 frob t6 ) + name (value): i () + parent: name (value): p () previousSibling: name (value): #text ( t5 ) nextSibling: name (value): #text ( t6 ) name (value): #text ( frob ) - parent: name (value): i ( frob ) + parent: name (value): i () previousSibling: NULL nextSibling: NULL name (value): #text ( t6 ) - parent: name (value): p (X t2 xxx t1 t5 frob t6 ) - previousSibling: name (value): i ( frob ) + parent: name (value): p () + previousSibling: name (value): i () nextSibling: NULL diff --git a/ext/dom/tests/bug42082.phpt b/ext/dom/tests/bug42082.phpt index b5fc893..98fa638 100644 --- a/ext/dom/tests/bug42082.phpt +++ b/ext/dom/tests/bug42082.phpt @@ -22,10 +22,10 @@ DOMNodeList int(0) bool(true) bool(true) -string(0) "" -bool(true) +NULL bool(true) bool(false) bool(false) +bool(false) ===DONE=== diff --git a/ext/dom/tests/bug69846.phpt b/ext/dom/tests/bug69846.phpt index 08e35cd..a667a89 100644 --- a/ext/dom/tests/bug69846.phpt +++ b/ext/dom/tests/bug69846.phpt @@ -81,11 +81,7 @@ object(DOMElement)#%d (17) { ["nodeName"]=> string(5) "form1" ["nodeValue"]=> - string(39) " - Value A - Value B - Value C - " + NULL ["nodeType"]=> int(1) ["parentNode"]=> diff --git a/ext/dom/tests/bug70029.phpt b/ext/dom/tests/bug70029.phpt new file mode 100644 index 0000000..55244c6 --- /dev/null +++ b/ext/dom/tests/bug70029.phpt @@ -0,0 +1,12 @@ +--TEST-- +Bug #70029 (nodeValue of DOMElement list content of children nodes) +--SKIPIF-- +<?php require_once('skipif.inc'); ?> +--FILE-- +<?php +$doc = new DOMDocument(); +$doc->loadXml('<tag><childtag>myString</childtag></tag>'); +var_dump($doc->documentElement->nodeValue); +?> +--EXPECT-- +NULL diff --git a/ext/dom/tests/dom001.phpt b/ext/dom/tests/dom001.phpt index a0c78fb..13e8fbf 100644 --- a/ext/dom/tests/dom001.phpt +++ b/ext/dom/tests/dom001.phpt @@ -108,7 +108,7 @@ Num Children: 4 Node Name: title Node Type: 1 Num Children: 1 -Node Content: Title +Node Content: Node Name: #text Node Type: 3 @@ -142,7 +142,7 @@ Num Children: 4 Node Name: title Node Type: 1 Num Children: 1 -Node Content: Title +Node Content: Node Name: #text Node Type: 3 @@ -186,7 +186,7 @@ Node Content: en Node Name: Silly Node Type: 1 Num Children: 1 -Node Content: Symphony +Node Content: <?xml version="1.0" standalone="yes"?> <!DOCTYPE chapter SYSTEM "/share/sgml/Norman_Walsh/db3xml10/db3xml10.dtd" [ @@ -214,24 +214,24 @@ Node Content: Symphony Node Name: Silly Node Type: 1 Num Children: 1 -Node Content: Symphony +Node Content: Using elem Node Name: Silly Node Type: 1 Num Children: 1 -Node Content: Symphony +Node Content: --------- Unlink Node Node Name: Silly Node Type: 1 Num Children: 1 -Node Content: Symphony +Node Content: Node Name: title Node Type: 1 Num Children: 1 -Node Content: Title +Node Content: Node Name: #text Node Type: 3