diff options
author | bors-servo <lbergstrom+bors@mozilla.com> | 2018-10-03 06:00:50 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-10-03 06:00:50 -0400 |
commit | 74e7736720f457abc62ffe82cdda1db230320747 (patch) | |
tree | 6d4532f210773257b3db5a67e833f7d321fbfc83 /components/script/dom/canvasrenderingcontext2d.rs | |
parent | 7fa2b2c879923a8b1f05be59ec9511ba8d5928c8 (diff) | |
parent | 5efbeea61ca619cbded91acb4b1b468aaa5e50b0 (diff) | |
download | servo-74e7736720f457abc62ffe82cdda1db230320747.tar.gz servo-74e7736720f457abc62ffe82cdda1db230320747.zip |
Auto merge of #21850 - servo:webgl, r=jdm
Don't use an intermediate PNG buffer in HTMLCanvasElement::ToDataURL
<!-- Reviewable:start -->
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/21850)
<!-- Reviewable:end -->
Diffstat (limited to 'components/script/dom/canvasrenderingcontext2d.rs')
-rw-r--r-- | components/script/dom/canvasrenderingcontext2d.rs | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/components/script/dom/canvasrenderingcontext2d.rs b/components/script/dom/canvasrenderingcontext2d.rs index e3ca01c311e..2b364c3702d 100644 --- a/components/script/dom/canvasrenderingcontext2d.rs +++ b/components/script/dom/canvasrenderingcontext2d.rs @@ -128,7 +128,7 @@ impl CanvasRenderingContext2D { canvas: Option<&HTMLCanvasElement>, image_cache: Arc<ImageCache>, base_url: ServoUrl, - size: Size2D<i32>, + size: Size2D<u32>, ) -> CanvasRenderingContext2D { debug!("Creating new canvas rendering context."); let (sender, receiver) = @@ -157,7 +157,7 @@ impl CanvasRenderingContext2D { pub fn new( global: &GlobalScope, canvas: &HTMLCanvasElement, - size: Size2D<i32>, + size: Size2D<u32>, ) -> DomRoot<CanvasRenderingContext2D> { let window = window_from_node(canvas); let image_cache = window.image_cache(); @@ -173,7 +173,7 @@ impl CanvasRenderingContext2D { } // https://html.spec.whatwg.org/multipage/#concept-canvas-set-bitmap-dimensions - pub fn set_bitmap_dimensions(&self, size: Size2D<i32>) { + pub fn set_bitmap_dimensions(&self, size: Size2D<u32>) { self.reset_to_initial_state(); self.ipc_renderer .send(CanvasMsg::Recreate(size, self.get_canvas_id())) @@ -456,7 +456,7 @@ impl CanvasRenderingContext2D { Ok(()) } - fn fetch_image_data(&self, url: ServoUrl) -> Option<(Vec<u8>, Size2D<i32>)> { + fn fetch_image_data(&self, url: ServoUrl) -> Option<(Vec<u8>, Size2D<u32>)> { let img = match self.request_image_from_cache(url) { ImageResponse::Loaded(img, _) => img, ImageResponse::PlaceholderLoaded(_, _) | @@ -466,7 +466,7 @@ impl CanvasRenderingContext2D { }, }; - let image_size = Size2D::new(img.width as i32, img.height as i32); + let image_size = Size2D::new(img.width, img.height); let image_data = match img.format { PixelFormat::BGRA8 => img.bytes.to_vec(), PixelFormat::K8 => panic!("K8 color type not supported"), |