diff --git a/components/script/dom/webglrenderingcontext.rs b/components/script/dom/webglrenderingcontext.rs index 7972201b9ce..d832776230d 100644 --- a/components/script/dom/webglrenderingcontext.rs +++ b/components/script/dom/webglrenderingcontext.rs @@ -437,9 +437,13 @@ impl WebGLRenderingContext { } fn mark_as_dirty(&self) { - self.canvas - .upcast::() - .dirty(NodeDamage::OtherNodeDamage); + // If we don't have a bound framebuffer, then don't mark the canvas + // as dirty. + if self.bound_framebuffer.get().is_none() { + self.canvas + .upcast::() + .dirty(NodeDamage::OtherNodeDamage); + } } fn vertex_attrib(&self, indx: u32, x: f32, y: f32, z: f32, w: f32) {