diff --git a/components/script/dom/imagedata.rs b/components/script/dom/imagedata.rs index 39e3b061711..cc7699bd5f3 100644 --- a/components/script/dom/imagedata.rs +++ b/components/script/dom/imagedata.rs @@ -15,6 +15,7 @@ use js::jsapi::{Heap, JSObject}; use js::rust::Runtime; use js::typedarray::{CreateWith, Uint8ClampedArray}; use std::borrow::Cow; +use std::convert::TryInto; use std::default::Default; use std::ptr; use std::ptr::NonNull; @@ -113,7 +114,12 @@ impl ImageData { let len = width * height * 4; let cx = global.get_cx(); rooted!(in (*cx) let mut array = ptr::null_mut::()); - Uint8ClampedArray::create(*cx, CreateWith::Length(len), array.handle_mut()).unwrap(); + Uint8ClampedArray::create( + *cx, + CreateWith::Length(len.try_into().unwrap()), + array.handle_mut(), + ) + .unwrap(); (*imagedata).data.set(array.get()); Ok(reflect_dom_object(imagedata, global))