From a542224ea28e2e8ccaf5e0df85bf6c603e97599a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Michel=20D=C3=A4nzer?= Date: Fri, 7 Feb 2020 12:15:07 +0100 Subject: [PATCH] xwayland: Call glamor_block_handler from xwl_screen_post_damage In between the two phases introduced by the previous change. This makes sure all pending drawing to the new buffers is flushed before they're committed to the Wayland server. --- hw/xwayland/xwayland-screen.c | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/hw/xwayland/xwayland-screen.c b/hw/xwayland/xwayland-screen.c index 428f176d5..74f27d345 100644 --- a/hw/xwayland/xwayland-screen.c +++ b/hw/xwayland/xwayland-screen.c @@ -29,6 +29,10 @@ #include #include +#ifdef XWL_HAS_GLAMOR +#include +#endif + #include #include #include @@ -300,6 +304,13 @@ xwl_screen_post_damage(struct xwl_screen *xwl_screen) if (xorg_list_is_empty(&commit_window_list)) return; +#ifdef XWL_HAS_GLAMOR + if (xwl_screen->glamor && + xwl_screen->egl_backend == &xwl_screen->gbm_backend) { + glamor_block_handler(xwl_screen->screen); + } +#endif + xorg_list_for_each_entry_safe(xwl_window, next_xwl_window, &commit_window_list, link_damage) { wl_surface_commit(xwl_window->surface);