mirror of
https://github.com/servo/servo.git
synced 2025-08-03 12:40:06 +01:00
Reduce scope of unsafe block in LayoutHTMLCanvasElementHelpers::data
This commit is contained in:
parent
5ff931d171
commit
a913c6650d
1 changed files with 15 additions and 15 deletions
|
@ -123,8 +123,8 @@ pub trait LayoutHTMLCanvasElementHelpers {
|
||||||
impl LayoutHTMLCanvasElementHelpers for LayoutDom<'_, HTMLCanvasElement> {
|
impl LayoutHTMLCanvasElementHelpers for LayoutDom<'_, HTMLCanvasElement> {
|
||||||
#[allow(unsafe_code)]
|
#[allow(unsafe_code)]
|
||||||
fn data(self) -> HTMLCanvasData {
|
fn data(self) -> HTMLCanvasData {
|
||||||
unsafe {
|
let source = unsafe {
|
||||||
let source = match self.unsafe_get().context.borrow_for_layout().as_ref() {
|
match self.unsafe_get().context.borrow_for_layout().as_ref() {
|
||||||
Some(&CanvasContext::Context2d(ref context)) => {
|
Some(&CanvasContext::Context2d(ref context)) => {
|
||||||
HTMLCanvasDataSource::Image(Some(context.to_layout().get_ipc_renderer()))
|
HTMLCanvasDataSource::Image(Some(context.to_layout().get_ipc_renderer()))
|
||||||
},
|
},
|
||||||
|
@ -135,20 +135,20 @@ impl LayoutHTMLCanvasElementHelpers for LayoutDom<'_, HTMLCanvasElement> {
|
||||||
context.to_layout().canvas_data_source()
|
context.to_layout().canvas_data_source()
|
||||||
},
|
},
|
||||||
None => HTMLCanvasDataSource::Image(None),
|
None => HTMLCanvasDataSource::Image(None),
|
||||||
};
|
|
||||||
|
|
||||||
let width_attr = self
|
|
||||||
.upcast::<Element>()
|
|
||||||
.get_attr_for_layout(&ns!(), &local_name!("width"));
|
|
||||||
let height_attr = self
|
|
||||||
.upcast::<Element>()
|
|
||||||
.get_attr_for_layout(&ns!(), &local_name!("height"));
|
|
||||||
HTMLCanvasData {
|
|
||||||
source: source,
|
|
||||||
width: width_attr.map_or(DEFAULT_WIDTH, |val| val.as_uint()),
|
|
||||||
height: height_attr.map_or(DEFAULT_HEIGHT, |val| val.as_uint()),
|
|
||||||
canvas_id: self.get_canvas_id_for_layout(),
|
|
||||||
}
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
let width_attr = self
|
||||||
|
.upcast::<Element>()
|
||||||
|
.get_attr_for_layout(&ns!(), &local_name!("width"));
|
||||||
|
let height_attr = self
|
||||||
|
.upcast::<Element>()
|
||||||
|
.get_attr_for_layout(&ns!(), &local_name!("height"));
|
||||||
|
HTMLCanvasData {
|
||||||
|
source: source,
|
||||||
|
width: width_attr.map_or(DEFAULT_WIDTH, |val| val.as_uint()),
|
||||||
|
height: height_attr.map_or(DEFAULT_HEIGHT, |val| val.as_uint()),
|
||||||
|
canvas_id: self.get_canvas_id_for_layout(),
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue