bug42112.phpt 631 B

12345678910111213141516171819202122232425262728293031
  1. --TEST--
  2. Bug #42112 (deleting a node produces memory corruption)
  3. --EXTENSIONS--
  4. dom
  5. --FILE--
  6. <?php
  7. $xml = <<<EOXML
  8. <root><child xml:id="id1">baz</child></root>
  9. EOXML;
  10. function remove_node($doc) {
  11. $node = $doc->getElementById( 'id1' );
  12. print 'Deleting Node: '.$node->nodeName."\n";
  13. $node->parentNode->removeChild( $node );
  14. }
  15. $doc = new DOMDocument();
  16. $doc->loadXML($xml);
  17. remove_node($doc);
  18. $node = $doc->getElementById( 'id1' );
  19. if ($node) {
  20. print 'Found Node: '.$node->nodeName."\n";
  21. }
  22. $root = $doc->documentElement;
  23. print 'Root Node: '.$root->nodeName."\n";
  24. ?>
  25. --EXPECT--
  26. Deleting Node: child
  27. Root Node: root