Greetings. I discovered in domxml, that when using 'children' on an entity reference node, the array returned is for the appropriate entity, plus all entities after it in libxml's internal list of entities.
The patch below fixes this problem (but not too elegantly; if someone wants to override 'children' instead, feel free...) -- -Jonathan P Springer <[EMAIL PROTECTED]> ------------------------------------------------------------------------------ "A standard is an arbitrary solution to a recurring problem." - Joe Hazen Index: ext/domxml/php_domxml.c =================================================================== RCS file: /repository/php4/ext/domxml/php_domxml.c,v retrieving revision 1.117 diff -u -c -r1.117 php_domxml.c cvs server: conflicting specifications of output style *** ext/domxml/php_domxml.c 20 Feb 2002 23:35:20 -0000 1.117 --- ext/domxml/php_domxml.c 24 Feb 2002 20:55:20 -0000 *************** *** 984,989 **** --- 984,990 ---- xmlNodePtr nodep = obj; object_init_ex(wrapper, domxmlentityref_class_entry); rsrc_type = le_domxmlentityrefp; + add_property_long(wrapper, "type", Z_TYPE_P(nodep)); add_property_stringl(wrapper, "name", (char *) nodep->name, strlen(nodep->name), 1); break; } *************** *** 1787,1792 **** --- 1788,1796 ---- child = php_domobject_new(last, &ret TSRMLS_CC); add_next_index_zval(return_value, child); last = last->next; + + /* TRICKY: For entity refs, we only want to assign one */ + if ((Z_TYPE_P(nodep) == XML_ENTITY_REF_NODE)) break; } } /* }}} */ -- PHP Development Mailing List <http://www.php.net/> To unsubscribe, visit: http://www.php.net/unsub.php