diff options
author | Christoph M. Becker <cmbecker69@gmx.de> | 2020-03-11 13:02:09 +0100 |
---|---|---|
committer | Christoph M. Becker <cmbecker69@gmx.de> | 2020-04-07 13:04:14 +0200 |
commit | efec22b7bedfb1eae2df72b84cf5ad229e0bdc1e (patch) | |
tree | 6a7aa5d3d1fec5cbc1dbe0c99c9204df0b5e999e /ext/dom/tests/bug78221.phpt | |
parent | 656eac74fa6074aebc087bb73d2e4651f7dc8c9e (diff) | |
download | php-git-efec22b7bedfb1eae2df72b84cf5ad229e0bdc1e.tar.gz |
Fix #78221: DOMNode::normalize() doesn't remove empty text nodes
If a text node is not followed by another text node, we remove it, if
its textContent is empty.
Diffstat (limited to 'ext/dom/tests/bug78221.phpt')
-rw-r--r-- | ext/dom/tests/bug78221.phpt | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/ext/dom/tests/bug78221.phpt b/ext/dom/tests/bug78221.phpt new file mode 100644 index 0000000000..a9bf50d98e --- /dev/null +++ b/ext/dom/tests/bug78221.phpt @@ -0,0 +1,17 @@ +--TEST-- +Bug #78221 (DOMNode::normalize() doesn't remove empty text nodes) +--SKIPIF-- +<?php +if (!extension_loaded('dom')) die('skip dom extension not available'); +?> +--FILE-- +<?php +$doc = new DOMDocument(); +$doc->loadHTML('<p id=x>foo</p>'); +$p = $doc->getElementById('x'); +$p->childNodes[0]->textContent = ''; +$p->normalize(); +var_dump($p->childNodes->length); +?> +--EXPECT-- +int(0) |