style: Unify MediaList and ServoMediaList.

Bug: 1456471
Reviewed-by: xidorn
MozReview-Commit-ID: KFWxoohpGlb
This commit is contained in:
Emilio Cobos Álvarez 2018-04-24 15:41:40 +02:00
parent b91ae6b1f9
commit 276fb7e04b
No known key found for this signature in database
GPG key ID: 056B727BB9C1027C

View file

@ -94,15 +94,15 @@ impl StylesheetInDocument for GeckoStyleSheet {
}
fn media<'a>(&'a self, guard: &'a SharedRwLockReadGuard) -> Option<&'a MediaList> {
use gecko_bindings::structs::ServoMediaList;
use gecko_bindings::structs::mozilla::dom::MediaList as DomMediaList;
use std::mem;
unsafe {
let servo_media_list = self.raw()._base.mMedia.mRawPtr as *const ServoMediaList;
if servo_media_list.is_null() {
let dom_media_list = self.raw()._base.mMedia.mRawPtr as *const DomMediaList;
if dom_media_list.is_null() {
return None;
}
let raw_list = &*(*servo_media_list).mRawList.mRawPtr;
let raw_list = &*(*dom_media_list).mRawList.mRawPtr;
let list = Locked::<MediaList>::as_arc(mem::transmute(&raw_list));
Some(list.read_with(guard))
}