diff --git a/components/compositing/compositor.rs b/components/compositing/compositor.rs index 3e786e94d93..0061a4baa40 100644 --- a/components/compositing/compositor.rs +++ b/components/compositing/compositor.rs @@ -1324,7 +1324,12 @@ impl IOCompositor { // have not requested a paint of the current epoch. // If a layer has sent a request for the current epoch, but it hasn't // arrived yet then this layer is waiting for a paint message. - if layer_data.requested_epoch == current_epoch && layer_data.painted_epoch != current_epoch { + // + // Also don't check the root layer, because the paint task won't paint + // anything for it after first layout. + if layer_data.id != LayerId::null() && + layer_data.requested_epoch == current_epoch && + layer_data.painted_epoch != current_epoch { return true; }