From ae965d6d8d5c56b96132bcb40f92ef6a2c0bde42 Mon Sep 17 00:00:00 2001 From: CYBAI Date: Wed, 9 Jan 2019 01:06:27 +0800 Subject: [PATCH] Set query to None when no search params --- components/script/dom/url.rs | 13 +++++++++---- .../url/urlsearchparams-delete.any.js.ini | 15 --------------- .../metadata/url/urlsearchparams-sort.any.js.ini | 7 ------- 3 files changed, 9 insertions(+), 26 deletions(-) delete mode 100644 tests/wpt/metadata/url/urlsearchparams-delete.any.js.ini delete mode 100644 tests/wpt/metadata/url/urlsearchparams-sort.any.js.ini diff --git a/components/script/dom/url.rs b/components/script/dom/url.rs index 8f489902747..b31333b7ac2 100644 --- a/components/script/dom/url.rs +++ b/components/script/dom/url.rs @@ -57,10 +57,15 @@ impl URL { pub fn set_query_pairs(&self, pairs: &[(String, String)]) { let mut url = self.url.borrow_mut(); - url.as_mut_url() - .query_pairs_mut() - .clear() - .extend_pairs(pairs); + + if pairs.is_empty() { + url.as_mut_url().set_query(None); + } else { + url.as_mut_url() + .query_pairs_mut() + .clear() + .extend_pairs(pairs); + } } } diff --git a/tests/wpt/metadata/url/urlsearchparams-delete.any.js.ini b/tests/wpt/metadata/url/urlsearchparams-delete.any.js.ini deleted file mode 100644 index 4afafaec160..00000000000 --- a/tests/wpt/metadata/url/urlsearchparams-delete.any.js.ini +++ /dev/null @@ -1,15 +0,0 @@ -[urlsearchparams-delete.any.worker.html] - [Removing non-existent param removes ? from URL] - expected: FAIL - - [Deleting all params removes ? from URL] - expected: FAIL - - -[urlsearchparams-delete.any.html] - [Removing non-existent param removes ? from URL] - expected: FAIL - - [Deleting all params removes ? from URL] - expected: FAIL - diff --git a/tests/wpt/metadata/url/urlsearchparams-sort.any.js.ini b/tests/wpt/metadata/url/urlsearchparams-sort.any.js.ini deleted file mode 100644 index ea25a6c5496..00000000000 --- a/tests/wpt/metadata/url/urlsearchparams-sort.any.js.ini +++ /dev/null @@ -1,7 +0,0 @@ -[urlsearchparams-sort.any.html] - [Sorting non-existent params removes ? from URL] - expected: FAIL - -[urlsearchparams-sort.any.worker.html] - [Sorting non-existent params removes ? from URL] - expected: FAIL