aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--components/net/fetch/methods.rs1
-rw-r--r--tests/unit/net/fetch.rs14
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"";