Find a file
Jonas Ådahl f8d6ae3877 xwayland/window: Queue damage after commits are allowed
Compositors may use XWAYLAND_ALLOW_COMMITS to communicate when Xwayland
may or may not commit new buffers to a wl_surface. If commits are
denied, then later allowed, we'll only get a buffer attached if there is
actual damage posted, which might be long after.

This fixes an issue where the window manager would reparent a window
while denying commits, then after reparenting, allow commits. The window
in question belonged to a game and took several seconds produce the next
frame, resulting in an empty window appearing as if it had just
disappeared.

Signed-off-by: Jonas Ådahl <jadahl@gmail.com>
(cherry picked from commit 9a55c402aa)
2023-04-27 11:26:02 +02:00
.gitlab-ci ci: remove redundant slash in libxcvt repository url 2022-09-14 09:56:31 +02:00
composite composite: Fix use-after-free of the COW 2023-03-29 14:22:52 +02:00
damageext Remove autotools support 2021-10-27 13:15:40 +03:00
dbe Drop Xorg DDX 2022-01-18 12:09:52 +01:00
dix dix: Clear device sprite after free in AttachDevice() 2023-02-23 16:09:41 +01:00
doc Remove autotools support 2021-10-27 13:15:40 +03:00
dri3 Drop Xorg DDX 2022-01-18 12:09:52 +01:00
fb Drop Xorg DDX 2022-01-18 12:09:52 +01:00
glamor glamor: Fix build without GBM 2023-04-27 11:26:02 +02:00
glx GLX: Free the tag of the old context later 2023-02-23 16:09:41 +01:00
hw xwayland/window: Queue damage after commits are allowed 2023-04-27 11:26:02 +02:00
include build: set _GNU_SOURCE when checking for SO_PEERCRED 2023-04-27 11:26:02 +02:00
m4 Add ax_pthread.m4 to m4/ 2016-05-29 19:20:51 -07:00
man Remove autotools support 2021-10-27 13:15:40 +03:00
mi Drop Xorg DDX 2022-01-18 12:09:52 +01:00
miext Drop miext/shadow directory 2022-01-18 12:09:52 +01:00
os os: print registers in the libunwind version of xorg_backtrace() 2022-07-01 10:02:16 +02:00
present present: Send a PresentConfigureNotify event for destroyed windows 2023-02-23 16:29:20 +01:00
randr randr: introduce rrCrtcGetInfo DDX function 2023-02-23 16:09:41 +01:00
record record: Fix out of bounds access in SwapCreateRegister() 2021-12-14 15:00:00 +02:00
render render: Fix build with gcc 12 2022-01-28 10:32:04 +01:00
test test: Use either wayland-info or weston-info 2023-03-27 08:55:30 +02:00
Xext Xext: fix invalid event type mask in XTestSwapFakeInput 2022-12-19 13:57:33 +10:00
xfixes xfixes: Fix out of bounds access in *ProcXFixesCreatePointerBarrier() 2021-12-14 15:00:01 +02:00
Xi Xi: fix potential use-after-free in DeepCopyPointerClasses 2023-02-07 08:30:43 +01:00
xkb xkbUtils: use existing symbol names instead of deleted deprecated ones 2023-03-29 10:11:57 +02:00
.appveyor.yml Drop Xephyr / kdrive DDX 2022-01-18 12:09:52 +01:00
.dir-locals.el .dir-locals.el: Add missing final newline 2019-10-01 17:05:28 +00:00
.gitignore .gitignore: Add new autotools file 'test-driver' 2014-04-21 13:41:42 -07:00
.gitlab-ci.yml Don't install Xvfb 2022-01-18 12:09:52 +01:00
COPYING modesetting: Merge modesetting's COPYING into the xserver's. 2014-09-15 12:46:02 -07:00
meson.build Bump version to 22.1.9 2023-03-29 14:22:52 +02:00
meson_options.txt meson: Build Xwayland unconditionally 2022-01-18 12:09:52 +01:00
README.md Fix spelling/wording issues 2020-07-05 13:07:33 -07:00
xserver.ent.in doc: relocate xserver.ent in the package root directory 2011-05-14 11:22:26 -07:00

X Server

The X server accepts requests from client applications to create windows, which are (normally rectangular) "virtual screens" that the client program can draw into.

Windows are then composed on the actual screen by the X server (or by a separate composite manager) as directed by the window manager, which usually communicates with the user via graphical controls such as buttons and draggable titlebars and borders.

For a comprehensive overview of X Server and X Window System, consult the following article: https://en.wikipedia.org/wiki/X_server

All questions regarding this software should be directed at the Xorg mailing list:

https://lists.freedesktop.org/mailman/listinfo/xorg

The primary development code repository can be found at:

https://gitlab.freedesktop.org/xorg/xserver

For patch submission instructions, see:

https://www.x.org/wiki/Development/Documentation/SubmittingPatches

As with other projects hosted on freedesktop.org, X.Org follows its Code of Conduct, based on the Contributor Covenant. Please conduct yourself in a respectful and civilized manner when using the above mailing lists, bug trackers, etc:

https://www.freedesktop.org/wiki/CodeOfConduct