When running rootful, i.e. as a regular Wayland client, Xwayland needs to wait for the initial configure event before posting its initial buffer and commit the surface. Not doing so may cause mutter to log a warning when Xwayland is started rootful: | Buggy client (org.freedesktop.Xwayland) committed initial non-empty | content without acknowledging configuration, working around. Or running rootful with libdecor: | Client provided invalid window geometry for xdg_surface#nn | (org.freedesktop.Xwayland - Wnn (Xwayland on :nn)). Working around. | | Buggy client (org.freedesktop.Xwayland) committed initial non-empty | content without acknowledging configuration, working around. This is actually mutter being nice, as this should be treated as a protocol error and Xwayland would be terminated. To avoid the issue, we need to hold on attaching a buffer and committing the surface until we actually get the first configure event from the compositor. That, however, only applies to rootful mode, so we can leave the default code path for rootless untouched. Closes: https://gitlab.freedesktop.org/xorg/xserver/-/issues/1853 Signed-off-by: Olivier Fourdan <ofourdan@redhat.com> v2: commit the surface after attaching the first buffer on configure event only for the initial configure (Michel Dänzer). v3: return early in present flip if we didn't get the initial configure event (Michel Dänzer). Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/2110> |
||
|---|---|---|
| .gitlab-ci | ||
| composite | ||
| config | ||
| damageext | ||
| dbe | ||
| dix | ||
| doc | ||
| dri3 | ||
| exa | ||
| fb | ||
| glamor | ||
| glx | ||
| hw | ||
| include | ||
| man | ||
| mi | ||
| miext | ||
| os | ||
| present | ||
| pseudoramiX | ||
| randr | ||
| record | ||
| render | ||
| test | ||
| Xext | ||
| xfixes | ||
| Xi | ||
| xkb | ||
| .appveyor.yml | ||
| .dir-locals.el | ||
| .git-blame-ignore-revs | ||
| .gitignore | ||
| .gitlab-ci.yml | ||
| .mailmap | ||
| .travis.yml | ||
| COPYING | ||
| meson.build | ||
| meson_options.txt | ||
| README.md | ||
| SECURITY.md | ||
| xorg-server.m4 | ||
| xorg-server.pc.in | ||
| xserver.ent.in | ||
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: