-
darin@apple.com authored
2008-03-25 Darin Adler <darin@apple.com> Reviewed by Anders. - fix http://bugs.webkit.org/show_bug.cgi?id=17252 Acid3 test removing Nodes during NodeIterator walk fails (affects Acid3 test 2) Test: traversal/acid3-test-2.html * bindings/js/JSNodeIteratorCustom.cpp: (WebCore::JSNodeIterator::nextNode): Update since result is PassRefPtr. (WebCore::JSNodeIterator::previousNode): Ditto. * dom/NodeIterator.cpp: (WebCore::NodeIterator::nextNode): Changed result to PassRefPtr. Added code to track both the current candidate (which needs to move along to the next node if current node is deleted) and the current provisional result (passed to acceptNode, and needs to be returned even if it's deleted). (WebCore::NodeIterator::previousNode): Ditto. (WebCore::NodeIterator::nodeWillBeRemoved): Call updateForNodeRemoval for m_candidateNode as well as m_referenceNode. * dom/NodeIterator.h: Use PassRefPtr for return values. LayoutTests: 2008-03-25 Darin Adler <darin@apple.com> Reviewed by Anders. - test for http://bugs.webkit.org/show_bug.cgi?id=17252 Acid3 test removing Nodes during NodeIterator walk fails (affects Acid3 test 2) * traversal/acid3-test-2-expected.txt: Added. * traversal/acid3-test-2.html: Added. * traversal/resources/acid3-test-2.js: Added. * traversal/resources/exception-forwarding.js: Removed bogus extra line of code. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@31303 268f45cc-cd09-0410-ab3c-d52691b4dbfc
7fca675f