From df23f909cdf0460186776e43f451233985150eab Mon Sep 17 00:00:00 2001 From: Keith Yeung Date: Mon, 7 May 2018 23:25:09 -0700 Subject: [PATCH] Do not unwrap in element{,s}FromPoint --- components/script/dom/document.rs | 7 +++++-- .../wpt/metadata/css/cssom-view/elementsFromPoint.html.ini | 5 ++++- tests/wpt/metadata/css/cssom-view/matchMedia.xht.ini | 7 ++++++- 3 files changed, 15 insertions(+), 4 deletions(-) diff --git a/components/script/dom/document.rs b/components/script/dom/document.rs index 5c9cd57b128c..70caff31e17a 100644 --- a/components/script/dom/document.rs +++ b/components/script/dom/document.rs @@ -3624,7 +3624,7 @@ impl DocumentMethods for Document { let y = *y as f32; let point = &Point2D::new(x, y); let window = window_from_node(self); - let viewport = window.window_size().unwrap().initial_viewport; + let viewport = window.window_size()?.initial_viewport; if self.browsing_context().is_none() { return None; @@ -3658,7 +3658,10 @@ impl DocumentMethods for Document { let y = *y as f32; let point = &Point2D::new(x, y); let window = window_from_node(self); - let viewport = window.window_size().unwrap().initial_viewport; + let viewport = match window.window_size() { + Some(size) => size.initial_viewport, + None => return vec![] + }; if self.browsing_context().is_none() { return vec!(); diff --git a/tests/wpt/metadata/css/cssom-view/elementsFromPoint.html.ini b/tests/wpt/metadata/css/cssom-view/elementsFromPoint.html.ini index 11f4b5d5c7a9..046b2acda848 100644 --- a/tests/wpt/metadata/css/cssom-view/elementsFromPoint.html.ini +++ b/tests/wpt/metadata/css/cssom-view/elementsFromPoint.html.ini @@ -1,4 +1,7 @@ [elementsFromPoint.html] type: testharness - expected: CRASH + [SVG element at x,y] + expected: FAIL + [transformed element at x,y] + expected: FAIL diff --git a/tests/wpt/metadata/css/cssom-view/matchMedia.xht.ini b/tests/wpt/metadata/css/cssom-view/matchMedia.xht.ini index 1cab6bdeac00..ed947e81e1e5 100644 --- a/tests/wpt/metadata/css/cssom-view/matchMedia.xht.ini +++ b/tests/wpt/metadata/css/cssom-view/matchMedia.xht.ini @@ -1,5 +1,6 @@ [matchMedia.xht] type: testharness + expected: TIMEOUT [window.matchMedia exists] expected: FAIL [MediaQueryList.matches for "(max-width: 199px), all and (min-width: 200px)"] @@ -11,5 +12,9 @@ [MediaQueryList.matches for "(min-width: 150px)"] expected: FAIL [Resize iframe from 200x100 to 200x50, then to 100x50] - expected: FAIL + expected: NOTRUN + [Listeners are called in the order which they have been added] + expected: NOTRUN + [Listener added twice is only called once.] + expected: NOTRUN