diff --git a/components/script/dom/htmlcollection.rs b/components/script/dom/htmlcollection.rs index c07af986135..3ac4d491513 100644 --- a/components/script/dom/htmlcollection.rs +++ b/components/script/dom/htmlcollection.rs @@ -85,7 +85,10 @@ impl HTMLCollection { ascii_lower_tag: Atom, } impl CollectionFilter for TagNameFilter { - fn filter(&self, elem: JSRef, _root: JSRef) -> bool { + fn filter(&self, elem: JSRef, root: JSRef) -> bool { + if NodeCast::from_ref(elem) == root { + return false + } if elem.html_element_in_html_document() { *elem.local_name() == self.ascii_lower_tag } else { diff --git a/tests/wpt/metadata/dom/nodes/Element-getElementsByTagName.html.ini b/tests/wpt/metadata/dom/nodes/Element-getElementsByTagName.html.ini index f6617adb8c2..ab6270595ec 100644 --- a/tests/wpt/metadata/dom/nodes/Element-getElementsByTagName.html.ini +++ b/tests/wpt/metadata/dom/nodes/Element-getElementsByTagName.html.ini @@ -8,7 +8,3 @@ [getElementsByTagName(\'*\')] expected: FAIL - - [Matching the context object] - expected: FAIL -