mirror of
https://github.com/X11Libre/xserver.git
synced 2026-04-14 17:18:09 +00:00
xwayland/present: Check window & source pixmap depth match last
Preparation for next commit, no functional change intended.
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1300>
(cherry picked from commit 4495c696b5)
This commit is contained in:
committed by
Alan Coopersmith
parent
3236c57b9e
commit
fba908ab35
@@ -773,16 +773,6 @@ xwl_present_check_flip(RRCrtcPtr crtc,
|
||||
if (!RegionEqual(&present_window->clipList, &present_window->winSize))
|
||||
return FALSE;
|
||||
|
||||
#ifdef XWL_HAS_GLAMOR
|
||||
if (xwl_window->xwl_screen->glamor &&
|
||||
!xwl_glamor_check_flip(present_window, pixmap))
|
||||
return FALSE;
|
||||
|
||||
if (!xwl_glamor_supports_implicit_sync(xwl_window->xwl_screen) &&
|
||||
!xwl_window->xwl_screen->explicit_sync)
|
||||
return FALSE;
|
||||
#endif /* XWL_HAS_GLAMOR */
|
||||
|
||||
/* Can't flip if the window pixmap doesn't match the xwl_window parent
|
||||
* window's, e.g. because a client redirected this window or one of its
|
||||
* parents.
|
||||
@@ -798,6 +788,16 @@ xwl_present_check_flip(RRCrtcPtr crtc,
|
||||
if (!RegionEqual(&xwl_window->toplevel->winSize, &present_window->winSize))
|
||||
return FALSE;
|
||||
|
||||
#ifdef XWL_HAS_GLAMOR
|
||||
if (!xwl_glamor_supports_implicit_sync(xwl_window->xwl_screen) &&
|
||||
!xwl_window->xwl_screen->explicit_sync)
|
||||
return FALSE;
|
||||
|
||||
if (xwl_window->xwl_screen->glamor &&
|
||||
!xwl_glamor_check_flip(present_window, pixmap))
|
||||
return FALSE;
|
||||
#endif /* XWL_HAS_GLAMOR */
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user