File U_present-wnmd-Relax-assertion-on-CRTC-on-abort_vblank.patch of Package xorg-x11-server.27640
From 0e60139064b84b856c59e5a456e26c60710b1b69 Mon Sep 17 00:00:00 2001
From: Olivier Fourdan <ofourdan@redhat.com>
Date: Mon, 18 Nov 2019 17:28:45 +0100
Subject: [PATCH] present/wnmd: Relax assertion on CRTC on abort_vblank()
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Currently, the function `present_wnmd_abort_vblank()` would fail if the
given `crtc` is NULL.
However, `xwl_present_get_crtc()` can return `NULL` under some
circumstances, which would cause an unexpected termination of Xwayland
in such a case, caused by the assertion failure being triggered.
Remove the assertion, considering that the `crtc` isn't actually used in
neither `present_wnmd_abort_vblank()` nor `xwl_present_abort_vblank()`.
Signed-off-by: Olivier Fourdan <ofourdan@redhat.com>
Reviewed-by: Michel Dänzer <mdaenzer@redhat.com>
Closes: https://gitlab.freedesktop.org/xorg/xserver/issues/937
(cherry picked from commit 4f984fc06bd57cabfa38f6191f10714878dc8969)
---
present/present_wnmd.c | 2 --
1 file changed, 2 deletions(-)
Index: xorg-server-1.20.3/present/present_wnmd.c
===================================================================
--- xorg-server-1.20.3.orig/present/present_wnmd.c
+++ xorg-server-1.20.3/present/present_wnmd.c
@@ -647,8 +647,6 @@ present_wnmd_abort_vblank(ScreenPtr scre
present_window_priv_ptr window_priv = present_window_priv(window);
present_vblank_ptr vblank;
- assert(crtc);
-
(*screen_priv->wnmd_info->abort_vblank) (window, crtc, event_id, msc);
xorg_list_for_each_entry(vblank, &window_priv->exec_queue, event_queue) {