7.238. xorg-x11-server

Updated xorg-x11-server packages that fix several bugs and add one enhancement are now available for Red Hat Enterprise Linux 6.
X.Org is an open source implementation of the X Window System. It provides the basic low-level functionality that full-fledged graphical user interfaces are designed upon.

Bug Fixes

BZ#963829
The Shift and Caps Lock and Num Lock keys' functionality was reversed when a USB keyboard was unplugged while in Caps Lock or Num Lock mode. Unplugging the keyboard with Caps Lock or Num Lock enabled and later plugging it back in led to incorrect modifier state on the keyboard. Now, the correct modifier state is applied when a keyboard is attached. The discrepancy between the actual and logical status of modifiers no longer occurs.
BZ#1007006
Connecting to a remote machine of different endianness architecture using the X Display Manager Control Protocol (XDMCP) could cause unexpected termination of the X server when the data length in the XkbSetGeometry request was erroneously swapped twice, and an incorrect value was produced. With this update, the data is swapped only once when appropriate, ensuring the use of correct data length. Connecting to remote machines no longer causes X server crashes in this situation.
BZ#1138353
Due to a regression, the "Always" mode of the Xorg server's backing store (-bs) option was not functional, and applications expecting the retention of window content when it was unmapped did not work. The mode has been implemented, and applications that require it now work.
BZ#1161061
The keyboard remained in Caps Lock or Num Lock mode even after the keys were pressed again to change input mode. Now, the Caps Lock and Num Lock functions no longer remain active after pressing the keys to deactivate them.
BZ#1164828
The Xephyr server's 8-bit pseudocolor emulation incorrectly maintained only one colormap for the entire server. When running Xephyr at 8 bpp with multiple screens, only one screen displayed correct colors. Xephyr has been amended to maintain one colormap per screen and now displays correct colors on all screens.
BZ#1171121
The X server package was missing requirements for basic drivers such as vesa, void, or evdev. With this update, installing the X server automatically pulls the basic required drivers as well.
BZ#1177687
The fix for CVE-2014-8092 (RHSA-2014:1983) introduced a type conversion invalid in C++, preventing a C++ application, such as TigerVNC, to be compiled using the X server source files. Now, the header file uses an explicit cast for the type conversion, and C++ applications using X server source files can be compiled.
BZ#1184365
The string format used in error messages was not supported by the X server. When connecting to an unwilling XDMCP server, an error, a backtrace, and termination of the X server occurred instead of displaying an error message. Now, the X server supports the string format, connecting to an unwilling XDMCP server no longer causes a crash, and an error message is displayed prior to exiting cleanly.
BZ#1199591
The X Window System failed to load on reboot when the Xinerama extension and the SELinux module in enforcing mode were enabled. It kept attempting to load the GUI and went on in a loop. Now, the X Window System loads as expected in this situation.
BZ#1208094
Passing a request containing zero height to the XPutImage() function could cause a "division by zero" error in the X server. Now, the X server checks the height value and avoids division by zero. The requests no longer cause errors.

Enhancement

BZ#1049297
The xvfb-run script now accepts the "-a" argument to automatically select an unused display number. Users no longer have to choose one themselves, which was difficult and error-prone when running from automated scripts. The Xvfb server can be used for headless automation setups without the need to specify a display number explicitly.
Users of xorg-x11-server are advised to upgrade to these updated packages, which fix these bugs and add this enhancement.