aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorbors-servo <metajack+bors@gmail.com>2014-11-18 08:45:35 -0700
committerbors-servo <metajack+bors@gmail.com>2014-11-18 08:45:35 -0700
commit8cecb03d756d8df4de69ca13b663d547f438d320 (patch)
treee59993fa7c24db0405828a35f16c8e56e3519c40
parentefb4fe4a4ac9bf96cf1db649ab112014ce2c13a4 (diff)
parent712b3d0f5bfb83660b67da077a239a6b2ad5e2fe (diff)
downloadservo-8cecb03d756d8df4de69ca13b663d547f438d320.tar.gz
servo-8cecb03d756d8df4de69ca13b663d547f438d320.zip
auto merge of #4030 : achals/servo/master, r=Ms2ger
https://github.com/servo/servo/issues/3995 This is my first PR, so please let me know if I'm doing something wrong!
-rw-r--r--components/script/dom/htmlcollection.rs4
-rw-r--r--tests/wpt/metadata/dom/nodes/getElementsByClassName-12.htm.ini5
-rw-r--r--tests/wpt/metadata/dom/nodes/getElementsByClassName-13.htm.ini5
-rw-r--r--tests/wpt/metadata/dom/nodes/getElementsByClassName-18.htm.ini5
4 files changed, 2 insertions, 17 deletions
diff --git a/components/script/dom/htmlcollection.rs b/components/script/dom/htmlcollection.rs
index 48aa8ab7fe5..b776e74ed90 100644
--- a/components/script/dom/htmlcollection.rs
+++ b/components/script/dom/htmlcollection.rs
@@ -140,8 +140,8 @@ impl HTMLCollection {
classes: Vec<Atom>
}
impl CollectionFilter for ClassNameFilter {
- fn filter(&self, elem: JSRef<Element>, _root: JSRef<Node>) -> bool {
- self.classes.iter().all(|class| elem.has_class(class))
+ fn filter(&self, elem: JSRef<Element>, root: JSRef<Node>) -> bool {
+ (NodeCast::from_ref(elem) != root) && self.classes.iter().all(|class| elem.has_class(class))
}
}
let filter = ClassNameFilter {
diff --git a/tests/wpt/metadata/dom/nodes/getElementsByClassName-12.htm.ini b/tests/wpt/metadata/dom/nodes/getElementsByClassName-12.htm.ini
deleted file mode 100644
index e27303c0fe0..00000000000
--- a/tests/wpt/metadata/dom/nodes/getElementsByClassName-12.htm.ini
+++ /dev/null
@@ -1,5 +0,0 @@
-[getElementsByClassName-12.htm]
- type: testharness
- [element.getElementsByClassName(): simple]
- expected: FAIL
-
diff --git a/tests/wpt/metadata/dom/nodes/getElementsByClassName-13.htm.ini b/tests/wpt/metadata/dom/nodes/getElementsByClassName-13.htm.ini
deleted file mode 100644
index d7699df380c..00000000000
--- a/tests/wpt/metadata/dom/nodes/getElementsByClassName-13.htm.ini
+++ /dev/null
@@ -1,5 +0,0 @@
-[getElementsByClassName-13.htm]
- type: testharness
- [element.getElementsByClassName(): adding an element]
- expected: FAIL
-
diff --git a/tests/wpt/metadata/dom/nodes/getElementsByClassName-18.htm.ini b/tests/wpt/metadata/dom/nodes/getElementsByClassName-18.htm.ini
deleted file mode 100644
index 95c4a3ef759..00000000000
--- a/tests/wpt/metadata/dom/nodes/getElementsByClassName-18.htm.ini
+++ /dev/null
@@ -1,5 +0,0 @@
-[getElementsByClassName-18.htm]
- type: testharness
- [element.getElementsByClassName(array): "a", "b"]
- expected: FAIL
-