-
ap authored
http://bugs.webkit.org/show_bug.cgi?id=13190 XPath incorrectly handles namespaces on attributes WebCore: * xml/XPathStep.cpp: (WebCore::XPath::Step::nodesInAxis): Added a special case for faster attribute lookup; gives a slight but measurable performance improvement for bug 13021. (WebCore::XPath::Step::nodeMatches): Fixed NameTest for attribute nodes. * xml/XPathStep.h: (WebCore::XPath::Step::NodeTest::NodeTest): (WebCore::XPath::Step::NodeTest::namespaceURI): (WebCore::XPath::Step::nodeTest): (WebCore::XPath::Step::setNodeTest): Move m_namespaceURI to NodeTest, where it belongs. Removed unused m_nodeTestData (oops!). * xml/XPathGrammar.y: * xml/XPathPath.cpp: (WebCore::XPath::LocationPath::optimizeStepPair): Accounted for the above change. LayoutTests: * fast/xpath/attr-namespace-expected.txt: Added. * fast/xpath/attr-namespace.html: Added. * fast/xpath/xpath-namespaces-expected.txt: * fast/xpath/xpath-namespaces.html: Cleaned up; added a couple more cases (which passed anyway, but weren't tested for). git-svn-id: http://svn.webkit.org/repository/webkit/trunk@20554 268f45cc-cd09-0410-ab3c-d52691b4dbfc
16c9b5f7