summaryrefslogtreecommitdiff
path: root/present/present.c
diff options
context:
space:
mode:
Diffstat (limited to 'present/present.c')
-rw-r--r--present/present.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/present/present.c b/present/present.c
index 5fde84626..8d37395fc 100644
--- a/present/present.c
+++ b/present/present.c
@@ -439,7 +439,7 @@ present_restore_screen_pixmap(ScreenPtr screen)
* Only do this the first time for a particular unflip operation, or
* we'll probably scribble over other windows
*/
- if (screen->GetWindowPixmap(screen->root) == flip_pixmap)
+ if (screen->root && screen->GetWindowPixmap(screen->root) == flip_pixmap)
present_copy_region(&screen_pixmap->drawable, flip_pixmap, NULL, 0, 0);
/* Switch back to using the screen pixmap now to avoid
@@ -447,7 +447,8 @@ present_restore_screen_pixmap(ScreenPtr screen)
*/
if (flip_window)
present_set_tree_pixmap(flip_window, flip_pixmap, screen_pixmap);
- present_set_tree_pixmap(screen->root, NULL, screen_pixmap);
+ if (screen->root)
+ present_set_tree_pixmap(screen->root, NULL, screen_pixmap);
}
static void