diff options
Diffstat (limited to 'components/script/dom/webglrenderingcontext.rs')
-rw-r--r-- | components/script/dom/webglrenderingcontext.rs | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/components/script/dom/webglrenderingcontext.rs b/components/script/dom/webglrenderingcontext.rs index 07ab777e631..c7896b42436 100644 --- a/components/script/dom/webglrenderingcontext.rs +++ b/components/script/dom/webglrenderingcontext.rs @@ -569,12 +569,10 @@ impl WebGLRenderingContext { return Err(Error::Security); } if let Some((data, size)) = canvas.fetch_all_data() { - TexPixels::new( - IpcSharedMemory::from_bytes(&data), - size, - PixelFormat::BGRA8, - true, - ) + let data = data.unwrap_or_else(|| { + IpcSharedMemory::from_bytes(&vec![0; size.area() as usize * 4]) + }); + TexPixels::new(data, size, PixelFormat::BGRA8, true) } else { return Ok(None); } |