Fix regression causing screen tearing with xserver 1.20.5
Resolves: rhbz#1726419
This commit is contained in:
parent
84ed0d0988
commit
5160bab94c
@ -0,0 +1,49 @@
|
||||
From 8d2c776b2e14b3edcb27ced96cda7bede82c39cc Mon Sep 17 00:00:00 2001
|
||||
From: Olivier Fourdan <ofourdan@redhat.com>
|
||||
Date: Thu, 4 Jul 2019 08:42:15 +0200
|
||||
Subject: [PATCH xserver] Revert "present/scmd: Check that the flip and screen
|
||||
pixmap pitches match"
|
||||
|
||||
This reverts commit ef91da2757050652c724f6e674e8b1acf5d0cb31.
|
||||
Closes: https://gitlab.freedesktop.org/xorg/xserver/issues/839
|
||||
---
|
||||
present/present_scmd.c | 8 +++-----
|
||||
1 file changed, 3 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/present/present_scmd.c b/present/present_scmd.c
|
||||
index 7c2f80997..8417d0925 100644
|
||||
--- a/present/present_scmd.c
|
||||
+++ b/present/present_scmd.c
|
||||
@@ -78,7 +78,7 @@ present_check_flip(RRCrtcPtr crtc,
|
||||
PresentFlipReason *reason)
|
||||
{
|
||||
ScreenPtr screen = window->drawable.pScreen;
|
||||
- PixmapPtr screen_pixmap, window_pixmap;
|
||||
+ PixmapPtr window_pixmap;
|
||||
WindowPtr root = screen->root;
|
||||
present_screen_priv_ptr screen_priv = present_screen_priv(screen);
|
||||
|
||||
@@ -99,9 +99,8 @@ present_check_flip(RRCrtcPtr crtc,
|
||||
return FALSE;
|
||||
|
||||
/* Make sure the window hasn't been redirected with Composite */
|
||||
- screen_pixmap = screen->GetScreenPixmap(screen);
|
||||
window_pixmap = screen->GetWindowPixmap(window);
|
||||
- if (window_pixmap != screen_pixmap &&
|
||||
+ if (window_pixmap != screen->GetScreenPixmap(screen) &&
|
||||
window_pixmap != screen_priv->flip_pixmap &&
|
||||
window_pixmap != present_flip_pending_pixmap(screen))
|
||||
return FALSE;
|
||||
@@ -127,8 +126,7 @@ present_check_flip(RRCrtcPtr crtc,
|
||||
window->drawable.x != pixmap->screen_x || window->drawable.y != pixmap->screen_y ||
|
||||
#endif
|
||||
window->drawable.width != pixmap->drawable.width ||
|
||||
- window->drawable.height != pixmap->drawable.height ||
|
||||
- pixmap->devKind != screen_pixmap->devKind) {
|
||||
+ window->drawable.height != pixmap->drawable.height) {
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
--
|
||||
2.21.0
|
||||
|
@ -46,7 +46,7 @@
|
||||
Summary: X.Org X11 X server
|
||||
Name: xorg-x11-server
|
||||
Version: 1.20.5
|
||||
Release: 3%{?gitdate:.%{gitdate}}%{?dist}
|
||||
Release: 4%{?gitdate:.%{gitdate}}%{?dist}
|
||||
URL: http://www.x.org
|
||||
License: MIT
|
||||
|
||||
@ -114,6 +114,10 @@ Patch27: 0001-xwayland-Check-status-in-GBM-pixmap-creation.patch
|
||||
Patch28: 0001-glamor-Make-pixmap-exportable-from-gbm_bo_from_pixma.patch
|
||||
Patch29: 0001-xwayland-Reset-scheduled-frames-after-hiding-tablet-.patch
|
||||
|
||||
# https://gitlab.freedesktop.org/xorg/xserver/issues/839
|
||||
# https://bugzilla.redhat.com/1726419
|
||||
Patch30: 0001-Revert-present-scmd-Check-that-the-flip-and-screen-p.patch
|
||||
|
||||
BuildRequires: systemtap-sdt-devel
|
||||
BuildRequires: git
|
||||
BuildRequires: automake autoconf libtool pkgconfig
|
||||
@ -538,6 +542,10 @@ find %{inst_srcdir}/hw/xfree86 -name \*.c -delete
|
||||
|
||||
|
||||
%changelog
|
||||
* Mon Jul 8 2019 Olivier Fourdan <ofourdan@redhat.com> 1.20.5-4
|
||||
- Fix regression causing screen tearing with upstream xserver 1.20.5
|
||||
(rhbz#1726419)
|
||||
|
||||
* Fri Jun 28 2019 Olivier Fourdan <ofourdan@redhat.com> 1.20.5-3
|
||||
- Remove atomic downstream patches causing regressions (#1714981, #1723715)
|
||||
- Xwayland crashes (#1708119, #1691745)
|
||||
|
Loading…
Reference in New Issue
Block a user