From b73be50e2b53eaee095d622d1dbdcb1a58fb8066 Mon Sep 17 00:00:00 2001 From: iska Date: Sun, 5 Apr 2015 13:26:39 +0200 Subject: [PATCH] Add nil-checks for popping-methods in stack of open elements --- HTMLKit/HTMLStackOfOpenElements.m | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/HTMLKit/HTMLStackOfOpenElements.m b/HTMLKit/HTMLStackOfOpenElements.m index 0378094..4fd7ab2 100644 --- a/HTMLKit/HTMLStackOfOpenElements.m +++ b/HTMLKit/HTMLStackOfOpenElements.m @@ -116,7 +116,7 @@ - (void)popElementsUntilElementPoppedWithTagName:(NSString *)tagName { - while (![self.currentNode.tagName isEqualToString:tagName]) { + while (self.currentNode && ![self.currentNode.tagName isEqualToString:tagName]) { [_stack removeLastObject]; } [_stack removeLastObject]; @@ -124,7 +124,7 @@ - (void)popElementsUntilAnElementPoppedWithAnyOfTagNames:(NSArray *)tagNames { - while (![tagNames containsObject:self.currentNode.tagName]) { + while (self.currentNode && ![tagNames containsObject:self.currentNode.tagName]) { [_stack removeLastObject]; } [_stack removeLastObject]; @@ -132,7 +132,7 @@ - (void)popElementsUntilElementPopped:(HTMLElement *)element { - while (![self.currentNode isEqual:element]) { + while (self.currentNode && ![self.currentNode isEqual:element]) { [_stack removeLastObject]; } [_stack removeLastObject]; @@ -140,7 +140,7 @@ - (void)clearBackToTableContext { - while (![self.currentNode.tagName isEqualToAny:@"table", @"template", @"html", nil]) { + while (self.currentNode && ![self.currentNode.tagName isEqualToAny:@"table", @"template", @"html", nil]) { [_stack removeLastObject]; } }