From 39972a174e5b40966307ca32fa38325cc7fddbd0 Mon Sep 17 00:00:00 2001 From: Glenn Watson Date: Mon, 3 Aug 2015 11:29:48 +1000 Subject: [PATCH] Fix panic when called on root node, and update test expectations. The three tests that are marked as failures are because they use offsetWidth as a dummy to force a layout flush. Now that these exist, they expose an unrelated bug with reflow. --- components/script/dom/window.rs | 4 ++-- .../css21_dev/html4/first-letter-dynamic-003a.htm.ini | 3 +++ .../css21_dev/html4/first-letter-dynamic-003b.htm.ini | 3 +++ .../metadata-css/css21_dev/html4/run-in-basic-017.htm.ini | 3 +++ .../forms/the-input-element/input-type-button.html.ini | 5 ----- 5 files changed, 11 insertions(+), 7 deletions(-) create mode 100644 tests/wpt/metadata-css/css21_dev/html4/first-letter-dynamic-003a.htm.ini create mode 100644 tests/wpt/metadata-css/css21_dev/html4/first-letter-dynamic-003b.htm.ini create mode 100644 tests/wpt/metadata-css/css21_dev/html4/run-in-basic-017.htm.ini delete mode 100644 tests/wpt/metadata/html/semantics/forms/the-input-element/input-type-button.html.ini diff --git a/components/script/dom/window.rs b/components/script/dom/window.rs index 1320ca354b9..6498ce75fab 100644 --- a/components/script/dom/window.rs +++ b/components/script/dom/window.rs @@ -839,8 +839,8 @@ impl<'a> WindowHelpers for &'a Window { Some(parent_node_address) => { let node = from_untrusted_node_address(js_runtime.rt(), parent_node_address); - let element = ElementCast::to_ref(node.r()).unwrap(); - Some(Root::from_ref(element)) + let element = ElementCast::to_ref(node.r()); + element.map(Root::from_ref) } None => { None diff --git a/tests/wpt/metadata-css/css21_dev/html4/first-letter-dynamic-003a.htm.ini b/tests/wpt/metadata-css/css21_dev/html4/first-letter-dynamic-003a.htm.ini new file mode 100644 index 00000000000..f6c4c8d90d6 --- /dev/null +++ b/tests/wpt/metadata-css/css21_dev/html4/first-letter-dynamic-003a.htm.ini @@ -0,0 +1,3 @@ +[first-letter-dynamic-003a.htm] + type: reftest + expected: FAIL diff --git a/tests/wpt/metadata-css/css21_dev/html4/first-letter-dynamic-003b.htm.ini b/tests/wpt/metadata-css/css21_dev/html4/first-letter-dynamic-003b.htm.ini new file mode 100644 index 00000000000..95499887574 --- /dev/null +++ b/tests/wpt/metadata-css/css21_dev/html4/first-letter-dynamic-003b.htm.ini @@ -0,0 +1,3 @@ +[first-letter-dynamic-003b.htm] + type: reftest + expected: FAIL diff --git a/tests/wpt/metadata-css/css21_dev/html4/run-in-basic-017.htm.ini b/tests/wpt/metadata-css/css21_dev/html4/run-in-basic-017.htm.ini new file mode 100644 index 00000000000..c7e1e1f65d2 --- /dev/null +++ b/tests/wpt/metadata-css/css21_dev/html4/run-in-basic-017.htm.ini @@ -0,0 +1,3 @@ +[run-in-basic-017.htm] + type: reftest + expected: FAIL \ No newline at end of file diff --git a/tests/wpt/metadata/html/semantics/forms/the-input-element/input-type-button.html.ini b/tests/wpt/metadata/html/semantics/forms/the-input-element/input-type-button.html.ini deleted file mode 100644 index e0fd34f9938..00000000000 --- a/tests/wpt/metadata/html/semantics/forms/the-input-element/input-type-button.html.ini +++ /dev/null @@ -1,5 +0,0 @@ -[input-type-button.html] - type: testharness - [label value] - expected: FAIL -