diff options
Diffstat (limited to 'components/canvas')
-rw-r--r-- | components/canvas/canvas_data.rs | 5 | ||||
-rw-r--r-- | components/canvas/canvas_paint_thread.rs | 2 |
2 files changed, 5 insertions, 2 deletions
diff --git a/components/canvas/canvas_data.rs b/components/canvas/canvas_data.rs index 1a4d1ccfc98..33da592c235 100644 --- a/components/canvas/canvas_data.rs +++ b/components/canvas/canvas_data.rs @@ -982,7 +982,10 @@ impl<'a> CanvasData<'a> { updates.push(ImageUpdate::Update(image_key, descriptor, data)); }, None => { - let key = self.webrender_api.generate_key(); + let key = match self.webrender_api.generate_key() { + Ok(key) => key, + Err(()) => return, + }; updates.push(ImageUpdate::Add(key, descriptor, data)); self.image_key = Some(key); debug!("New image {:?}.", self.image_key); diff --git a/components/canvas/canvas_paint_thread.rs b/components/canvas/canvas_paint_thread.rs index 6832a5cddc8..3c6bbfb53a8 100644 --- a/components/canvas/canvas_paint_thread.rs +++ b/components/canvas/canvas_paint_thread.rs @@ -26,7 +26,7 @@ pub enum ImageUpdate { } pub trait WebrenderApi { - fn generate_key(&self) -> webrender_api::ImageKey; + fn generate_key(&self) -> Result<webrender_api::ImageKey, ()>; fn update_images(&self, updates: Vec<ImageUpdate>); fn clone(&self) -> Box<dyn WebrenderApi>; } |