diff options
-rw-r--r-- | components/net/fetch/methods.rs | 1 | ||||
-rw-r--r-- | tests/unit/net/fetch.rs | 14 |
2 files changed, 15 insertions, 0 deletions
diff --git a/components/net/fetch/methods.rs b/components/net/fetch/methods.rs index 481da031056..976b1e0b5ee 100644 --- a/components/net/fetch/methods.rs +++ b/components/net/fetch/methods.rs @@ -294,6 +294,7 @@ fn basic_fetch(request: Rc<Request>) -> Response { response.headers.set(ContentType(Mime( TopLevel::Text, SubLevel::Html, vec![(Attr::Charset, Value::Utf8)]))); + *response.body.lock().unwrap() = ResponseBody::Done(vec![]); response }, _ => Response::network_error() diff --git a/tests/unit/net/fetch.rs b/tests/unit/net/fetch.rs index 010d49e5732..1a6168f77d6 100644 --- a/tests/unit/net/fetch.rs +++ b/tests/unit/net/fetch.rs @@ -95,6 +95,20 @@ fn test_fetch_response_body_matches_const_message() { } #[test] +fn test_fetch_aboutblank() { + + let url = Url::parse("about:blank").unwrap(); + let origin = Origin::Origin(url.origin()); + let mut request = Request::new(url, Some(origin), false); + request.referer = Referer::NoReferer; + let wrapped_request = Rc::new(request); + + let fetch_response = fetch(wrapped_request); + assert!(!fetch_response.is_network_error()); + assert!(*fetch_response.body.lock().unwrap() == ResponseBody::Done(vec![])); +} + +#[test] fn test_fetch_response_is_basic_filtered() { static MESSAGE: &'static [u8] = b""; |