xserver: Branch 'master' - 2 commits
GitLab Mirror
gitlab-mirror at kemper.freedesktop.org
Wed Oct 2 08:28:23 UTC 2024
hw/xwayland/xwayland-glamor.c | 3 ++-
hw/xwayland/xwayland-present.c | 1 +
2 files changed, 3 insertions(+), 1 deletion(-)
New commits:
commit 23dde0860c4c11be5c1168042dff0f72eedacdda
Author: Michel Dänzer <mdaenzer at redhat.com>
Date: Mon Aug 5 18:48:35 2024 +0200
xwayland/present: Update surface window again if manual redirect fails
Even if the manual redirect didn't result in the surface window we
wanted, it might be different again without the redirect.
I don't know of any specific scenario hitting this though, it's more of
a theoretical safeguard.
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1637>
diff --git a/hw/xwayland/xwayland-present.c b/hw/xwayland/xwayland-present.c
index f2b4154f7..5a7d7a156 100644
--- a/hw/xwayland/xwayland-present.c
+++ b/hw/xwayland/xwayland-present.c
@@ -1308,6 +1308,7 @@ xwl_present_maybe_redirect_window(WindowPtr window)
compUnredirectWindow(serverClient, window, CompositeRedirectManual);
xwl_present_window->redirected = FALSE;
xwl_present_window->redirect_failed = TRUE;
+ xwl_window_update_surface_window(xwl_window);
return FALSE;
}
commit e6c649e6e6b7184c61500ed2740edb4ac7274a31
Author: Michel Dänzer <mdaenzer at redhat.com>
Date: Mon Aug 5 18:42:36 2024 +0200
xwayland/glamor: Try manual redirect only if parent window has depth 32
That's the case 8e8bc0a1ef33 ("xwayland: Try manual redirection for
surface window in glamor_check_flip") was intended for. If the parent
window doesn't have depth 32, the automatic redirection might have been
done by a client, in which case doing the manual redirection may run
into trouble.
Fixes: 8e8bc0a1ef33 ("xwayland: Try manual redirection for surface window in glamor_check_flip")
Closes: https://gitlab.freedesktop.org/xorg/xserver/-/issues/1724
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1637>
diff --git a/hw/xwayland/xwayland-glamor.c b/hw/xwayland/xwayland-glamor.c
index 3e62fa7cd..c3aa483ff 100644
--- a/hw/xwayland/xwayland-glamor.c
+++ b/hw/xwayland/xwayland-glamor.c
@@ -104,7 +104,8 @@ xwl_glamor_check_flip(WindowPtr present_window, PixmapPtr pixmap)
}
if (surface_window->redirectDraw == RedirectDrawAutomatic &&
- surface_window->drawable.depth != 32)
+ surface_window->drawable.depth != 32 &&
+ surface_window->parent->drawable.depth == 32)
xwl_present_maybe_redirect_window(surface_window);
return TRUE;
More information about the xorg-commit
mailing list