diff --git a/src/nu/validator/htmlparser/impl/TreeBuilder.java b/src/nu/validator/htmlparser/impl/TreeBuilder.java
index 7b78b1b7..63ee22f7 100644
--- a/src/nu/validator/htmlparser/impl/TreeBuilder.java
+++ b/src/nu/validator/htmlparser/impl/TreeBuilder.java
@@ -3898,8 +3898,9 @@ private void endTagTemplateInHead() throws SAXException {
private int findLastInTableScopeOrRootTemplateTbodyTheadTfoot() {
for (int i = currentPtr; i > 0; i--) {
- if (stack[i].getGroup() == TreeBuilder.TBODY_OR_THEAD_OR_TFOOT ||
- stack[i].getGroup() == TreeBuilder.TEMPLATE) {
+ if (stack[i].ns == "http://www.w3.org/1999/xhtml"
+ && (stack[i].getGroup() == TreeBuilder.TBODY_OR_THEAD_OR_TFOOT
+ || stack[i].getGroup() == TreeBuilder.TEMPLATE)) {
return i;
}
}
@@ -4667,7 +4668,7 @@ private int findLastOrRoot(@Local String name) {
private int findLastOrRoot(int group) {
for (int i = currentPtr; i > 0; i--) {
- if (stack[i].getGroup() == group) {
+ if (stack[i].ns == "http://www.w3.org/1999/xhtml" && stack[i].getGroup() == group) {
return i;
}
}