if(!getChildBreaks(cleanTimeValues).isEmpty()){ while(matchingPosition.position < getChildBreaks(cleanTimeValues).getLastBreakingTagPosition()){ getChildBreaks(cleanTimeValues).pop(); while( !getChildBreaks(cleanTimeValues).isEmpty() && tagName.equals(getChildBreaks(cleanTimeValues).getLastBreakingTag()) && matchingPosition.position == getChildBreaks(cleanTimeValues).getLastBreakingTagPosition()){ if(nodeList.get(getChildBreaks(cleanTimeValues).closedByChildBreak.peek().position) != null) { int position = getChildBreaks(cleanTimeValues).pop().position; Object toReopen = nodeList.get(position); getChildBreaks(cleanTimeValues).pop(); getChildBreaks(cleanTimeValues).addBreak(lastTagPos, new TagPos(nodeIterator.previousIndex(), tag.getName())); boolean certainty = startTagToken.hasAttribute("id") ? false : true; properties.fireHtmlError(certainty, (TagNode)nodeList.get(lastTagPos.position), ErrorType.UnpermittedChild);
if (!getChildBreaks(cleanTimeValues).isEmpty()) { while (matchingPosition.position < getChildBreaks(cleanTimeValues).getLastBreakingTagPosition()) { getChildBreaks(cleanTimeValues).pop(); while (!getChildBreaks(cleanTimeValues).isEmpty() && tagName.equals(getChildBreaks(cleanTimeValues).getLastBreakingTag()) && matchingPosition.position == getChildBreaks(cleanTimeValues).getLastBreakingTagPosition()) { if (nodeList.get(getChildBreaks(cleanTimeValues).closedByChildBreak.peek().position) != null) { int position = getChildBreaks(cleanTimeValues).pop().position; Object toReopen = nodeList.get(position); getChildBreaks(cleanTimeValues).pop(); getChildBreaks(cleanTimeValues).addBreak(lastTagPos, new TagPos(nodeIterator.previousIndex(), tag.getName())); boolean certainty = startTagToken.hasAttribute("id") ? false : true; properties.fireHtmlError(certainty, (TagNode) nodeList.get(lastTagPos.position), ErrorType.UnpermittedChild);