| Index: Source/core/dom/NodeIterator.cpp
|
| diff --git a/Source/core/dom/NodeIterator.cpp b/Source/core/dom/NodeIterator.cpp
|
| index 6127231b144de4001529d2c2ea559e8d66afe65b..1a2e05605203cff8fcefca6b56e3ecaea3a7f131 100644
|
| --- a/Source/core/dom/NodeIterator.cpp
|
| +++ b/Source/core/dom/NodeIterator.cpp
|
| @@ -26,7 +26,6 @@
|
| #include "core/dom/NodeIterator.h"
|
|
|
| #include "bindings/v8/ExceptionState.h"
|
| -#include "bindings/v8/ScriptState.h"
|
| #include "core/dom/Document.h"
|
| #include "core/dom/ExceptionCode.h"
|
| #include "core/dom/NodeTraversal.h"
|
| @@ -86,7 +85,7 @@ NodeIterator::~NodeIterator()
|
| root()->document().detachNodeIterator(this);
|
| }
|
|
|
| -PassRefPtr<Node> NodeIterator::nextNode(ScriptState* state, ExceptionState& exceptionState)
|
| +PassRefPtr<Node> NodeIterator::nextNode(ExceptionState& exceptionState)
|
| {
|
| if (m_detached) {
|
| exceptionState.throwDOMException(InvalidStateError, "The iterator is detached.");
|
| @@ -101,8 +100,8 @@ PassRefPtr<Node> NodeIterator::nextNode(ScriptState* state, ExceptionState& exce
|
| // In other words, FILTER_REJECT does not pass over descendants
|
| // of the rejected node. Hence, FILTER_REJECT is the same as FILTER_SKIP.
|
| RefPtr<Node> provisionalResult = m_candidateNode.node;
|
| - bool nodeWasAccepted = acceptNode(state, provisionalResult.get()) == NodeFilter::FILTER_ACCEPT;
|
| - if (state && state->hadException())
|
| + bool nodeWasAccepted = acceptNode(provisionalResult.get(), exceptionState) == NodeFilter::FILTER_ACCEPT;
|
| + if (exceptionState.hadException())
|
| break;
|
| if (nodeWasAccepted) {
|
| m_referenceNode = m_candidateNode;
|
| @@ -115,7 +114,7 @@ PassRefPtr<Node> NodeIterator::nextNode(ScriptState* state, ExceptionState& exce
|
| return result.release();
|
| }
|
|
|
| -PassRefPtr<Node> NodeIterator::previousNode(ScriptState* state, ExceptionState& exceptionState)
|
| +PassRefPtr<Node> NodeIterator::previousNode(ExceptionState& exceptionState)
|
| {
|
| if (m_detached) {
|
| exceptionState.throwDOMException(InvalidStateError, "The iterator is detached.");
|
| @@ -130,8 +129,8 @@ PassRefPtr<Node> NodeIterator::previousNode(ScriptState* state, ExceptionState&
|
| // In other words, FILTER_REJECT does not pass over descendants
|
| // of the rejected node. Hence, FILTER_REJECT is the same as FILTER_SKIP.
|
| RefPtr<Node> provisionalResult = m_candidateNode.node;
|
| - bool nodeWasAccepted = acceptNode(state, provisionalResult.get()) == NodeFilter::FILTER_ACCEPT;
|
| - if (state && state->hadException())
|
| + bool nodeWasAccepted = acceptNode(provisionalResult.get(), exceptionState) == NodeFilter::FILTER_ACCEPT;
|
| + if (exceptionState.hadException())
|
| break;
|
| if (nodeWasAccepted) {
|
| m_referenceNode = m_candidateNode;
|
|
|