aboutsummaryrefslogtreecommitdiffstats
path: root/components/script/stylesheet_loader.rs
diff options
context:
space:
mode:
authorJosh Matthews <josh@joshmatthews.net>2019-10-03 17:36:02 -0400
committerJosh Matthews <josh@joshmatthews.net>2019-10-04 15:08:40 -0400
commit1df8d57dc6adcf56c22b45053b3d2eca904d17d3 (patch)
treece2ba8d6672925a95d551a0ece8ee9e279332e3e /components/script/stylesheet_loader.rs
parent583536c9406e685405d5b28da99dd8cab94c7d66 (diff)
downloadservo-1df8d57dc6adcf56c22b45053b3d2eca904d17d3.tar.gz
servo-1df8d57dc6adcf56c22b45053b3d2eca904d17d3.zip
Support CORS attributes for image elements.
Diffstat (limited to 'components/script/stylesheet_loader.rs')
-rw-r--r--components/script/stylesheet_loader.rs21
1 files changed, 4 insertions, 17 deletions
diff --git a/components/script/stylesheet_loader.rs b/components/script/stylesheet_loader.rs
index 258286dd6ea..82b5bbdf532 100644
--- a/components/script/stylesheet_loader.rs
+++ b/components/script/stylesheet_loader.rs
@@ -16,6 +16,7 @@ use crate::dom::htmllinkelement::{HTMLLinkElement, RequestGenerationId};
use crate::dom::node::{containing_shadow_root, document_from_node, window_from_node};
use crate::dom::performanceresourcetiming::InitiatorType;
use crate::dom::shadowroot::ShadowRoot;
+use crate::fetch::create_a_potential_CORS_request;
use crate::network_listener::{self, NetworkListener, PreInvoke, ResourceTimingListener};
use cssparser::SourceLocation;
use encoding_rs::UTF_8;
@@ -23,9 +24,7 @@ use ipc_channel::ipc;
use ipc_channel::router::ROUTER;
use mime::{self, Mime};
use msg::constellation_msg::PipelineId;
-use net_traits::request::{
- CorsSettings, CredentialsMode, Destination, Referrer, RequestBuilder, RequestMode,
-};
+use net_traits::request::{CorsSettings, Destination, Referrer, RequestBuilder};
use net_traits::{
FetchMetadata, FetchResponseListener, FilteredMetadata, Metadata, NetworkError, ReferrerPolicy,
};
@@ -335,6 +334,7 @@ impl<'a> StylesheetLoader<'a> {
}
// This function is also used to prefetch a stylesheet in `script::dom::servoparser::prefetch`.
+// https://html.spec.whatwg.org/multipage/#default-fetch-and-process-the-linked-resource
pub(crate) fn stylesheet_fetch_request(
url: ServoUrl,
cors_setting: Option<CorsSettings>,
@@ -344,20 +344,7 @@ pub(crate) fn stylesheet_fetch_request(
referrer_policy: Option<ReferrerPolicy>,
integrity_metadata: String,
) -> RequestBuilder {
- RequestBuilder::new(url)
- .destination(Destination::Style)
- // https://html.spec.whatwg.org/multipage/#create-a-potential-cors-request
- // Step 1
- .mode(match cors_setting {
- Some(_) => RequestMode::CorsMode,
- None => RequestMode::NoCors,
- })
- // https://html.spec.whatwg.org/multipage/#create-a-potential-cors-request
- // Step 3-4
- .credentials_mode(match cors_setting {
- Some(CorsSettings::Anonymous) => CredentialsMode::CredentialsSameOrigin,
- _ => CredentialsMode::Include,
- })
+ create_a_potential_CORS_request(url, Destination::Style, cors_setting, None)
.origin(origin)
.pipeline_id(Some(pipeline_id))
.referrer(Some(referrer))