diff --git a/components/net/http_loader.rs b/components/net/http_loader.rs index d4ed98d54ce..059c4d1e830 100644 --- a/components/net/http_loader.rs +++ b/components/net/http_loader.rs @@ -487,7 +487,9 @@ fn obtain_response(request_factory: &NetworkHttpRequestFactory, let response = match request_writer.send() { Ok(w) => w, - Err(HttpError::Io(ref io_error)) if io_error.kind() == io::ErrorKind::ConnectionAborted => { + Err(HttpError::Io(ref io_error)) + if io_error.kind() == io::ErrorKind::ConnectionAborted || + io_error.kind() == io::ErrorKind::ConnectionReset => { debug!("connection aborted ({:?}), possibly stale, trying new connection", io_error.description()); continue; }, diff --git a/components/net/resource_thread.rs b/components/net/resource_thread.rs index b54377563a1..312b0ea45a6 100644 --- a/components/net/resource_thread.rs +++ b/components/net/resource_thread.rs @@ -330,8 +330,7 @@ impl CoreResourceManager { let ua = self.user_agent.clone(); let dc = self.devtools_chan.clone(); let filemanager = self.filemanager.clone(); - // FIXME(#15694): use group.connector.clone() instead. - let connector = create_http_connector(group.ssl_client.clone()); + let connector = group.connector.clone(); thread::Builder::new().name(format!("fetch thread for {}", init.url)).spawn(move || { let mut request = Request::from_init(init);