summaryrefslogtreecommitdiff
path: root/present
diff options
context:
space:
mode:
authorMichel Dänzer <michel.daenzer@amd.com>2016-08-03 10:19:19 +0900
committerAdam Jackson <ajax@redhat.com>2016-08-15 15:14:43 -0400
commit9f04fa3babaaabe0ed5bf4aa2563755bc6c45723 (patch)
tree99b9c75fc6f993cb19a9949024c22aa56fc6200b /present
parent4cbf1fb1f978ecd975770cebbb330dc10f712b77 (diff)
present: Make present_restore_screen_pixmap handle screen->root == NULL
Easier than dealing with it in all paths that can end up here during server shutdown. Signed-off-by: Michel Dänzer <michel.daenzer@amd.com> Reviewed-by: Hans de Goede <hdegoede@redhat.com>
Diffstat (limited to 'present')
-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