style: Change Gecko_ImageValue_Create to take a CORS mode argument.

Differential Revision: https://phabricator.services.mozilla.com/D5106
This commit is contained in:
Brad Werth 2018-09-11 18:11:02 +00:00 committed by Emilio Cobos Álvarez
parent ca335ba2e4
commit b96d44e329
No known key found for this signature in database
GPG key ID: 056B727BB9C1027C

View file

@ -9,6 +9,7 @@ use gecko_bindings::bindings;
use gecko_bindings::structs::ServoBundledURI;
use gecko_bindings::structs::mozilla::css::URLValueData;
use gecko_bindings::structs::root::{RustString, nsStyleImageRequest};
use gecko_bindings::structs::root::mozilla::CORSMode;
use gecko_bindings::structs::root::mozilla::css::{ImageValue, URLValue};
use gecko_bindings::sugar::refptr::RefPtr;
use malloc_size_of::{MallocSizeOf, MallocSizeOfOps};
@ -186,15 +187,20 @@ impl SpecifiedImageUrl {
Self::from_css_url(CssUrl::parse_from_string(url, context))
}
fn from_css_url(url: CssUrl) -> Self {
fn from_css_url_with_cors(url: CssUrl, cors: CORSMode) -> Self {
let image_value = unsafe {
let ptr = bindings::Gecko_ImageValue_Create(url.for_ffi());
let ptr = bindings::Gecko_ImageValue_Create(url.for_ffi(), cors);
// We do not expect Gecko_ImageValue_Create returns null.
debug_assert!(!ptr.is_null());
RefPtr::from_addrefed(ptr)
};
Self { url, image_value }
}
fn from_css_url(url: CssUrl) -> Self {
use gecko_bindings::structs::root::mozilla::CORSMode_CORS_NONE;
Self::from_css_url_with_cors(url, CORSMode_CORS_NONE)
}
}
impl Parse for SpecifiedImageUrl {