rrichards                                Tue, 04 May 2010 12:55:26 +0000

Revision: http://svn.php.net/viewvc?view=revision&revision=298967

Log:
fix bug #51721 (mark DOMNodeList and DOMNamedNodeMap as Traversable)

Bug: http://bugs.php.net/51721 (Open) Patch: mark DOMNodeList and 
DOMNamedNodeMap as Traversable
      
Changed paths:
    U   php/php-src/branches/PHP_5_3/NEWS
    U   php/php-src/branches/PHP_5_3/ext/dom/php_dom.c
    U   php/php-src/trunk/ext/dom/php_dom.c

Modified: php/php-src/branches/PHP_5_3/NEWS
===================================================================
--- php/php-src/branches/PHP_5_3/NEWS   2010-05-04 12:12:28 UTC (rev 298966)
+++ php/php-src/branches/PHP_5_3/NEWS   2010-05-04 12:55:26 UTC (rev 298967)
@@ -43,6 +43,8 @@
   (Pierre)
 - Fixed bug #51723 (Content-length header is limited to 32bit integer with
   Apache2 on Windows). (Pierre)
+- Fixed bug #51721 (mark DOMNodeList and DOMNamedNodeMap as Traversable).
+  (David Zuelke)
 - Fixed bug #51690 (Phar::setStub looks for case-sensitive
   __HALT_COMPILER()). (Ilia)
 - Fixed bug #51688 (ini per dir crashes when invalid document root  are given).

Modified: php/php-src/branches/PHP_5_3/ext/dom/php_dom.c
===================================================================
--- php/php-src/branches/PHP_5_3/ext/dom/php_dom.c      2010-05-04 12:12:28 UTC 
(rev 298966)
+++ php/php-src/branches/PHP_5_3/ext/dom/php_dom.c      2010-05-04 12:55:26 UTC 
(rev 298967)
@@ -29,6 +29,7 @@
 #include "ext/standard/php_rand.h"
 #include "php_dom.h"
 #include "dom_properties.h"
+#include "zend_interfaces.h"

 #include "ext/standard/info.h"
 #define PHP_XPATH 1
@@ -680,6 +681,7 @@
        ce.create_object = dom_nnodemap_objects_new;
        dom_nodelist_class_entry = zend_register_internal_class_ex(&ce, NULL, 
NULL TSRMLS_CC);
        dom_nodelist_class_entry->get_iterator = php_dom_get_iterator;
+       zend_class_implements(dom_nodelist_class_entry TSRMLS_CC, 1, 
zend_ce_traversable);

        zend_hash_init(&dom_nodelist_prop_handlers, 0, NULL, NULL, 1);
        dom_register_prop_handler(&dom_nodelist_prop_handlers, "length", 
dom_nodelist_length_read, NULL TSRMLS_CC);
@@ -689,6 +691,7 @@
        ce.create_object = dom_nnodemap_objects_new;
        dom_namednodemap_class_entry = zend_register_internal_class_ex(&ce, 
NULL, NULL TSRMLS_CC);
        dom_namednodemap_class_entry->get_iterator = php_dom_get_iterator;
+       zend_class_implements(dom_namednodemap_class_entry TSRMLS_CC, 1, 
zend_ce_traversable);

        zend_hash_init(&dom_namednodemap_prop_handlers, 0, NULL, NULL, 1);
        dom_register_prop_handler(&dom_namednodemap_prop_handlers, "length", 
dom_namednodemap_length_read, NULL TSRMLS_CC);

Modified: php/php-src/trunk/ext/dom/php_dom.c
===================================================================
--- php/php-src/trunk/ext/dom/php_dom.c 2010-05-04 12:12:28 UTC (rev 298966)
+++ php/php-src/trunk/ext/dom/php_dom.c 2010-05-04 12:55:26 UTC (rev 298967)
@@ -29,6 +29,7 @@
 #include "ext/standard/php_rand.h"
 #include "php_dom.h"
 #include "dom_properties.h"
+#include "zend_interfaces.h"

 #include "ext/standard/info.h"
 #define PHP_XPATH 1
@@ -680,6 +681,7 @@
        ce.create_object = dom_nnodemap_objects_new;
        dom_nodelist_class_entry = zend_register_internal_class_ex(&ce, NULL, 
NULL TSRMLS_CC);
        dom_nodelist_class_entry->get_iterator = php_dom_get_iterator;
+       zend_class_implements(dom_nodelist_class_entry TSRMLS_CC, 1, 
zend_ce_traversable);

        zend_hash_init(&dom_nodelist_prop_handlers, 0, NULL, NULL, 1);
        dom_register_prop_handler(&dom_nodelist_prop_handlers, "length", 
dom_nodelist_length_read, NULL TSRMLS_CC);
@@ -689,6 +691,7 @@
        ce.create_object = dom_nnodemap_objects_new;
        dom_namednodemap_class_entry = zend_register_internal_class_ex(&ce, 
NULL, NULL TSRMLS_CC);
        dom_namednodemap_class_entry->get_iterator = php_dom_get_iterator;
+       zend_class_implements(dom_namednodemap_class_entry TSRMLS_CC, 1, 
zend_ce_traversable);

        zend_hash_init(&dom_namednodemap_prop_handlers, 0, NULL, NULL, 1);
        dom_register_prop_handler(&dom_namednodemap_prop_handlers, "length", 
dom_namednodemap_length_read, NULL TSRMLS_CC);

-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to