You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Fix C14N document subset canonicalization with namespace nodes
Remove the xns->next = NULL hack from rxml_xpath_object_wrap. In XPath
results, libxml2 stores the parent element pointer in xns->next (see
xmlXPathNodeSetAddNs). Zeroing it broke xmlC14NIsNodeInNodeset which
relies on that pointer to match namespace nodes in the input node set.
Instead, guard Namespace#next to detect the XPath convention by checking
whether next points to a namespace (type == XML_LOCAL_NAMESPACE).
When canonicalize receives an XPath::Object for :nodes, pass the raw
xmlNodeSet directly to xmlC14NDocDumpMemory instead of roundtripping
through Ruby objects, which dropped namespace nodes.
Enable W3C C14N spec examples 3.5 (entity references) and 3.7 (document
subsets) which were previously commented out or marked TODO.
0 commit comments