diff options
author | Christoph M. Becker <cmbecker69@gmx.de> | 2020-05-01 12:38:03 +0200 |
---|---|---|
committer | Derick Rethans <github@derickrethans.nl> | 2020-05-01 17:35:05 +0100 |
commit | 214b57e80a96a888e6fcd00ade7d93c1b93be5fa (patch) | |
tree | 5697cac1662fab3ae2111f90cceaa0a67f12a276 | |
parent | a58bfc67fee901ae3f7414bfa843c4b2bc3952b1 (diff) | |
download | php-git-214b57e80a96a888e6fcd00ade7d93c1b93be5fa.tar.gz |
Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
Fix #79528: Different object of the same xml between 7.4.5 and 7.4.4
-rw-r--r-- | NEWS | 3 | ||||
-rw-r--r-- | ext/simplexml/simplexml.c | 2 | ||||
-rw-r--r-- | ext/simplexml/tests/000.phpt | 32 | ||||
-rw-r--r-- | ext/simplexml/tests/009b.phpt | 25 | ||||
-rw-r--r-- | ext/simplexml/tests/bug51615.phpt | 26 | ||||
-rw-r--r-- | ext/simplexml/tests/bug61597.phpt | 30 |
6 files changed, 10 insertions, 108 deletions
@@ -2,6 +2,9 @@ PHP NEWS ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ?? ??? ????, PHP 7.4.6 +- SimpleXML: + . Fixed bug #79528 (Different object of the same xml between 7.4.5 and + 7.4.4). (cmb) 30 Apr 2020, PHP 7.4.6RC1 diff --git a/ext/simplexml/simplexml.c b/ext/simplexml/simplexml.c index 0760598aff..2cdff0e648 100644 --- a/ext/simplexml/simplexml.c +++ b/ext/simplexml/simplexml.c @@ -981,7 +981,7 @@ static void _get_base_node_value(php_sxe_object *sxe_ref, xmlNodePtr node, zval php_sxe_object *subnode; xmlChar *contents; - if ((!node->properties || node->type == XML_ENTITY_DECL) && node->children && node->children->type == XML_TEXT_NODE && !xmlIsBlankNode(node->children)) { + if (node->children && node->children->type == XML_TEXT_NODE && !xmlIsBlankNode(node->children)) { contents = xmlNodeListGetString(node->doc, node->children, 1); if (contents) { ZVAL_STRING(value, (char *)contents); diff --git a/ext/simplexml/tests/000.phpt b/ext/simplexml/tests/000.phpt index 0d4300e5ff..d70a038ffa 100644 --- a/ext/simplexml/tests/000.phpt +++ b/ext/simplexml/tests/000.phpt @@ -51,37 +51,7 @@ object(SimpleXMLElement)#%d (3) { ["elem1"]=> array(2) { [0]=> - object(SimpleXMLElement)#%d (3) { - ["@attributes"]=> - array(2) { - ["attr1"]=> - string(5) "first" - ["attr2"]=> - string(6) "second" - } - ["comment"]=> - object(SimpleXMLElement)#%d (0) { - } - ["elem2"]=> - object(SimpleXMLElement)#%d (2) { - ["@attributes"]=> - array(2) { - ["att25"]=> - string(2) "25" - ["att42"]=> - string(2) "42" - } - ["elem3"]=> - object(SimpleXMLElement)#%d (1) { - ["elem4"]=> - object(SimpleXMLElement)#%d (1) { - ["test"]=> - object(SimpleXMLElement)#%d (0) { - } - } - } - } - } + string(36) "There is some text.Here is some more" [1]=> object(SimpleXMLElement)#%d (1) { ["@attributes"]=> diff --git a/ext/simplexml/tests/009b.phpt b/ext/simplexml/tests/009b.phpt index a8ca72c5ea..fd920e2e26 100644 --- a/ext/simplexml/tests/009b.phpt +++ b/ext/simplexml/tests/009b.phpt @@ -28,29 +28,8 @@ object(SimpleXMLElement)#%d (3) { string(5) "elem1" } ["elem1"]=> - object(SimpleXMLElement)#%d (3) { - ["@attributes"]=> - array(1) { - ["attr1"]=> - string(5) "first" - } - ["comment"]=> - object(SimpleXMLElement)#%d (0) { - } - ["elem2"]=> - string(35) " - Here we have some text data. - " - } + string(10) "Bla bla 1." ["elem11"]=> - object(SimpleXMLElement)#%d (2) { - ["@attributes"]=> - array(1) { - ["attr2"]=> - string(6) "second" - } - [0]=> - string(10) "Bla bla 2." - } + string(10) "Bla bla 2." } ===DONE=== diff --git a/ext/simplexml/tests/bug51615.phpt b/ext/simplexml/tests/bug51615.phpt index 32af5f6ee4..b935414b80 100644 --- a/ext/simplexml/tests/bug51615.phpt +++ b/ext/simplexml/tests/bug51615.phpt @@ -22,7 +22,7 @@ foreach ($html->body->span as $obj) { Warning: DOMDocument::loadHTML(): error parsing attribute name in Entity, line: 1 in %s on line %d Warning: DOMDocument::loadHTML(): error parsing attribute name in Entity, line: 1 in %s on line %d -object(SimpleXMLElement)#5 (3) { +object(SimpleXMLElement)#%d (3) { ["@attributes"]=> array(2) { ["title"]=> @@ -31,29 +31,9 @@ object(SimpleXMLElement)#5 (3) { string(0) "" } [0]=> - object(SimpleXMLElement)#4 (2) { - ["@attributes"]=> - array(2) { - ["title"]=> - string(0) "" - ["y"]=> - string(0) "" - } - [0]=> - string(1) "x" - } + string(1) "x" [1]=> - object(SimpleXMLElement)#6 (2) { - ["@attributes"]=> - array(2) { - ["title"]=> - string(0) "" - ["z"]=> - string(0) "" - } - [0]=> - string(1) "x" - } + string(1) "x" } string(0) "" string(0) "" diff --git a/ext/simplexml/tests/bug61597.phpt b/ext/simplexml/tests/bug61597.phpt deleted file mode 100644 index 65fa6be772..0000000000 --- a/ext/simplexml/tests/bug61597.phpt +++ /dev/null @@ -1,30 +0,0 @@ ---TEST-- -Bug #61597 (SXE properties may lack attributes and content) ---SKIPIF-- -<?php -if (!extension_loaded('simplexml')) die('skip simplexml extension not available'); -?> ---FILE-- -<?php -$xml = <<<'EOX' -<?xml version="1.0"?> -<data> -<datum file-key="8708124062829849862">corn</datum> -</data> -EOX; - -var_dump(simplexml_load_string($xml)); -?> ---EXPECTF-- -object(SimpleXMLElement)#%d (1) { - ["datum"]=> - object(SimpleXMLElement)#%d (2) { - ["@attributes"]=> - array(1) { - ["file-key"]=> - string(19) "8708124062829849862" - } - [0]=> - string(4) "corn" - } -} |