diff --git a/src/compositor/meta-texture-tower.c b/src/compositor/meta-texture-tower.c index 8dbe62e7e..002547286 100644 --- a/src/compositor/meta-texture-tower.c +++ b/src/compositor/meta-texture-tower.c @@ -198,6 +198,9 @@ meta_texture_tower_update_area (MetaTextureTower *tower, g_return_if_fail (tower != NULL); + if (tower->textures[0] == COGL_INVALID_HANDLE) + return; + texture_width = cogl_texture_get_width (tower->textures[0]); texture_height = cogl_texture_get_height (tower->textures[0]); diff --git a/src/compositor/meta-window-actor.c b/src/compositor/meta-window-actor.c index ef47bc8b7..b69049f36 100644 --- a/src/compositor/meta-window-actor.c +++ b/src/compositor/meta-window-actor.c @@ -958,6 +958,9 @@ meta_window_actor_damage_all (MetaWindowActor *self) "pixmap-height", &pixmap_height, NULL); + if (!priv->mapped || priv->needs_pixmap) + return; + clutter_x11_texture_pixmap_update_area (texture_x11, 0, 0, @@ -2029,6 +2032,8 @@ meta_window_actor_process_damage (MetaWindowActor *self, return; } + if (!priv->mapped || priv->needs_pixmap) + return; clutter_x11_texture_pixmap_update_area (texture_x11, event->area.x,