xserver-multidpi/hw
luporl 7e142cb2a8 xserver: fix RGB mask handling
On FreeBSD 13.0-CURRENT for PowerPC64 big-endian (BE), X was
crashing in some cases. For instance, when twm was started
and the background was clicked to open its menu, X crashed
with a segmentation fault, trying to dereference a null pointer
at CreatePicture().

There were 2 issues with xorg-server handling of RGB masks that
caused the pointer above to be null and thus the crash:
- wrong use of ffs() to get the RGB offsets from the masks
- overflow when shifting a 16-bit integer

This change fixes both issues. They happen when the system is BE
but has a video adapter using a little-endian (LE) ARGB32
framebuffer. In order to display the correct colors, this setup
requires a BE RGBA32 color format to be used by X, by setting
the RGB masks appropriately, that didn't work properly because of
the issues above.
2021-04-16 14:40:49 +00:00
..
dmx present: fix msc offset calculation in screen mode 2021-04-16 10:53:43 +00:00
kdrive mi: List extensions in usage message 2021-01-29 12:52:09 +00:00
vfb mi: List extensions in usage message 2021-01-29 12:52:09 +00:00
xfree86 xserver: fix RGB mask handling 2021-04-16 14:40:49 +00:00
xnest mi: List extensions in usage message 2021-01-29 12:52:09 +00:00
xquartz French text in Preferences Pane Review 2021-04-07 16:19:24 -07:00
xwayland xwayland: implement pixmap_from_buffers for the eglstream backend 2021-04-09 14:00:01 +00:00
xwin mi: List extensions in usage message 2021-01-29 12:52:09 +00:00
Makefile.am Xwayland DDX 2014-04-03 15:19:22 -07:00
meson.build meson: Move Xvfb build under an option. 2017-09-20 13:19:21 -04:00