aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--components/script/dom/request.rs7
-rw-r--r--tests/wpt/metadata/fetch/api/request/request-clone.sub.html.ini8
2 files changed, 4 insertions, 11 deletions
diff --git a/components/script/dom/request.rs b/components/script/dom/request.rs
index 4cad8753eeb..3358fc63ef5 100644
--- a/components/script/dom/request.rs
+++ b/components/script/dom/request.rs
@@ -420,7 +420,7 @@ impl Request {
r
}
- fn clone_from(r: &Request) -> Root<Request> {
+ fn clone_from(r: &Request) -> Fallible<Root<Request>> {
let req = r.request.borrow();
let url = req.url();
let is_service_worker_global_scope = req.is_service_worker_global_scope;
@@ -436,8 +436,9 @@ impl Request {
*r_clone.request.borrow_mut() = req.clone();
r_clone.body_used.set(body_used);
*r_clone.mime_type.borrow_mut() = mime_type;
+ try!(r_clone.Headers().fill(Some(HeadersInit::Headers(r.Headers()))));
r_clone.Headers().set_guard(headers_guard);
- r_clone
+ Ok(r_clone)
}
pub fn get_request(&self) -> NetTraitsRequest {
@@ -613,7 +614,7 @@ impl RequestMethods for Request {
}
// Step 2
- Ok(Request::clone_from(self))
+ Request::clone_from(self)
}
#[allow(unrooted_must_root)]
diff --git a/tests/wpt/metadata/fetch/api/request/request-clone.sub.html.ini b/tests/wpt/metadata/fetch/api/request/request-clone.sub.html.ini
deleted file mode 100644
index eb2b589fa57..00000000000
--- a/tests/wpt/metadata/fetch/api/request/request-clone.sub.html.ini
+++ /dev/null
@@ -1,8 +0,0 @@
-[request-clone.sub.html]
- type: testharness
- [Check cloning a request]
- expected: FAIL
-
- [Check cloning a request copies the headers]
- expected: FAIL
-