diff --git a/HTMLKit/HTMLNodeIterator.m b/HTMLKit/HTMLNodeIterator.m
index 0c14127..8da7de0 100644
--- a/HTMLKit/HTMLNodeIterator.m
+++ b/HTMLKit/HTMLNodeIterator.m
@@ -47,16 +47,16 @@ typedef NS_ENUM(short, TraverseDirection)
if (node == nil) {
return nil;
}
- beforeNode = NO;
}
+ beforeNode = NO;
} else {
if (beforeNode) {
node = PrecedingNode(node, self.root);
if (node == nil) {
return nil;
}
- beforeNode = YES;
}
+ beforeNode = YES;
}
} while (FilterNode(self, node) != HTMLNodeFilterAccept);
@@ -69,10 +69,10 @@ NS_INLINE HTMLNode * PrecedingNode(HTMLNode *node, HTMLNode *root)
{
HTMLNode *previous = node.previousSibling;
if (previous != nil) {
- while (node.lastChildNode != nil) {
- node = node.lastChildNode;
+ while (previous.lastChildNode != nil) {
+ previous = previous.lastChildNode;
}
- return node;
+ return previous;
}
if (node == root) {