diff options
Diffstat (limited to 'ext/simplexml')
| -rw-r--r-- | ext/simplexml/simplexml.c | 12 | ||||
| -rw-r--r-- | ext/simplexml/tests/000.phpt | 9 | ||||
| -rw-r--r-- | ext/simplexml/tests/bug35785.phpt | 7 | ||||
| -rw-r--r-- | ext/simplexml/tests/bug37386.phpt | 2 | ||||
| -rw-r--r-- | ext/simplexml/tests/bug38406.phpt | 4 | ||||
| -rw-r--r-- | ext/simplexml/tests/sxe_001.phpt | 2 | ||||
| -rw-r--r-- | ext/simplexml/tests/sxe_002.phpt | 2 | ||||
| -rw-r--r-- | ext/simplexml/tests/sxe_003.phpt | 2 | ||||
| -rw-r--r-- | ext/simplexml/tests/sxe_004.phpt | 2 | ||||
| -rw-r--r-- | ext/simplexml/tests/sxe_005.phpt | 2 |
10 files changed, 12 insertions, 32 deletions
diff --git a/ext/simplexml/simplexml.c b/ext/simplexml/simplexml.c index 7870377687..47b8826374 100644 --- a/ext/simplexml/simplexml.c +++ b/ext/simplexml/simplexml.c @@ -36,8 +36,6 @@ #include "zend_interfaces.h" #include "sxe.h" -#define SXE_ELEMENT_BY_NAME 0 - zend_class_entry *sxe_class_entry = NULL; PHP_SXE_API zend_class_entry *sxe_get_element_class_entry() /* {{{ */ @@ -347,20 +345,10 @@ long_dim: _node_as_zval(sxe, node, rv, SXE_ITER_NONE, NULL, sxe->iter.nsprefix, sxe->iter.isprefix); } } else { -#if SXE_ELEMENT_BY_NAME - int newtype; - - GET_NODE(sxe, node); - node = sxe_get_element_by_name(sxe, node, &name, &newtype); - if (node) { - _node_as_zval(sxe, node, rv, newtype, name, sxe->iter.nsprefix, sxe->iter.isprefix); - } -#else /* In BP_VAR_IS mode only return a proper node if it actually exists. */ if (type != BP_VAR_IS || sxe_find_element_by_name(sxe, node->children, (xmlChar *) name)) { _node_as_zval(sxe, node, rv, SXE_ITER_ELEMENT, name, sxe->iter.nsprefix, sxe->iter.isprefix); } -#endif } } } diff --git a/ext/simplexml/tests/000.phpt b/ext/simplexml/tests/000.phpt index 51dbe3b5ec..ae23dcfdd0 100644 --- a/ext/simplexml/tests/000.phpt +++ b/ext/simplexml/tests/000.phpt @@ -13,7 +13,7 @@ function test($what) echo "===$what\n"; eval("var_dump(isset(\$$what));"); eval("var_dump((bool)\$$what);"); - eval("var_dump(count(\$$what));"); + eval("if (isset(\$$what)) var_dump(count(\$$what));"); eval("var_dump(\$$what);"); } @@ -168,7 +168,6 @@ object(SimpleXMLElement)#%d (2) { ===sxe->elem1[0]->elem2->bla bool(false) bool(false) -int(0) object(SimpleXMLElement)#%d (0) { } ===sxe->elem1[0]["attr1"] @@ -182,7 +181,6 @@ object(SimpleXMLElement)#%d (1) { ===sxe->elem1[0]->attr1 bool(false) bool(false) -int(0) object(SimpleXMLElement)#%d (0) { } ===sxe->elem1[1] @@ -201,7 +199,6 @@ object(SimpleXMLElement)#%d (1) { ===sxe->elem1[2] bool(false) bool(false) -int(0) NULL ===sxe->elem11 bool(true) @@ -233,22 +230,18 @@ object(SimpleXMLElement)#%d (0) { ===sxe->elem22 bool(false) bool(false) -int(0) object(SimpleXMLElement)#%d (0) { } ===sxe->elem22->elem222 bool(false) bool(false) -int(0) NULL ===sxe->elem22->attr22 bool(false) bool(false) -int(0) NULL ===sxe->elem22["attr22"] bool(false) bool(false) -int(0) NULL ===DONE=== diff --git a/ext/simplexml/tests/bug35785.phpt b/ext/simplexml/tests/bug35785.phpt index 0e03f07c55..080a510837 100644 --- a/ext/simplexml/tests/bug35785.phpt +++ b/ext/simplexml/tests/bug35785.phpt @@ -9,9 +9,8 @@ $xml = simplexml_load_string("<root></root>"); $xml->bla->posts->name = "FooBar"; echo $xml->asXML(); $xml = simplexml_load_string("<root></root>"); -$count = count($xml->bla->posts); -var_dump($count); -$xml->bla->posts[$count]->name = "FooBar"; +var_dump(isset($xml->bla->posts)); +$xml->bla->posts[0]->name = "FooBar"; echo $xml->asXML(); $xml = simplexml_load_string("<root></root>"); $xml->bla->posts[]->name = "FooBar"; @@ -22,7 +21,7 @@ echo $xml->asXML(); --EXPECTF-- <?xml version="1.0"?> <root><bla><posts><name>FooBar</name></posts></bla></root> -int(0) +bool(false) <?xml version="1.0"?> <root><bla><posts><name>FooBar</name></posts></bla></root> <?xml version="1.0"?> diff --git a/ext/simplexml/tests/bug37386.phpt b/ext/simplexml/tests/bug37386.phpt index cf86906137..06b69c4705 100644 --- a/ext/simplexml/tests/bug37386.phpt +++ b/ext/simplexml/tests/bug37386.phpt @@ -5,7 +5,7 @@ Bug #39760 (autocreating element doesn't assign value to first node) --FILE-- <?php -$sx1 = new SimpleXMLElement((binary)"<root />"); +$sx1 = new SimpleXMLElement("<root />"); $sx1->node[0] = 'node1'; $sx1->node[1] = 'node2'; diff --git a/ext/simplexml/tests/bug38406.phpt b/ext/simplexml/tests/bug38406.phpt index f439e33e5e..c64b52b847 100644 --- a/ext/simplexml/tests/bug38406.phpt +++ b/ext/simplexml/tests/bug38406.phpt @@ -5,8 +5,8 @@ Bug #38406 (crash when assigning objects to SimpleXML attributes) --FILE-- <?php -$item = new SimpleXMLElement(b'<something />'); -$item->attribute = b'something'; +$item = new SimpleXMLElement('<something />'); +$item->attribute = 'something'; var_dump($item->attribute); $item->otherAttribute = $item->attribute; diff --git a/ext/simplexml/tests/sxe_001.phpt b/ext/simplexml/tests/sxe_001.phpt index bb93eea076..be293efb39 100644 --- a/ext/simplexml/tests/sxe_001.phpt +++ b/ext/simplexml/tests/sxe_001.phpt @@ -25,7 +25,7 @@ $xml =<<<EOF </sxe> EOF; -var_dump(simplexml_load_string((binary)$xml, 'SimpleXMLIterator')); +var_dump(simplexml_load_string($xml, 'SimpleXMLIterator')); ?> ===DONE=== diff --git a/ext/simplexml/tests/sxe_002.phpt b/ext/simplexml/tests/sxe_002.phpt index b937b011d0..aff3f83844 100644 --- a/ext/simplexml/tests/sxe_002.phpt +++ b/ext/simplexml/tests/sxe_002.phpt @@ -35,7 +35,7 @@ $xml =<<<EOF </sxe> EOF; -$sxe = simplexml_load_string((binary)$xml, 'SimpleXMLIterator'); +$sxe = simplexml_load_string($xml, 'SimpleXMLIterator'); foreach(new RecursiveIteratorIterator($sxe, 1) as $name => $data) { var_dump($name); diff --git a/ext/simplexml/tests/sxe_003.phpt b/ext/simplexml/tests/sxe_003.phpt index 58c7523160..8a45071dd2 100644 --- a/ext/simplexml/tests/sxe_003.phpt +++ b/ext/simplexml/tests/sxe_003.phpt @@ -35,7 +35,7 @@ $xml =<<<EOF </sxe> EOF; -$sxe = simplexml_load_string((binary)$xml, 'SimpleXMLIterator'); +$sxe = simplexml_load_string($xml, 'SimpleXMLIterator'); foreach($sxe->getChildren() as $name => $data) { var_dump($name); diff --git a/ext/simplexml/tests/sxe_004.phpt b/ext/simplexml/tests/sxe_004.phpt index 20431de8be..ac4bcd8bf7 100644 --- a/ext/simplexml/tests/sxe_004.phpt +++ b/ext/simplexml/tests/sxe_004.phpt @@ -74,7 +74,7 @@ class SXETest extends SimpleXMLIterator } } -$sxe = new SXETest((binary)$xml); +$sxe = new SXETest($xml); $rit = new RecursiveIteratorIterator($sxe, RecursiveIteratorIterator::SELF_FIRST); foreach($rit as $data) { diff --git a/ext/simplexml/tests/sxe_005.phpt b/ext/simplexml/tests/sxe_005.phpt index 183d351166..8763085a09 100644 --- a/ext/simplexml/tests/sxe_005.phpt +++ b/ext/simplexml/tests/sxe_005.phpt @@ -26,7 +26,7 @@ class SXETest extends SimpleXMLIterator } } -$sxe = new SXETest((binary)$xml); +$sxe = new SXETest($xml); var_dump(count($sxe)); var_dump(count($sxe->elem1)); |
