Pixmap cursor bug?
mouse at mojatatu.com
mouse at mojatatu.com
Tue Dec 19 22:23:19 UTC 2023
I tried to send a HELP request to xorg-request but it disappeared
without any trace as far as I can tell, so I'm not sure whether I can
subscribe. If anyone sees this, _something_ got through, though.
There's a bug I've seen in various X servers. I *think* they're all
derived from X.org code, and I suspect this is moderately widespread;
I've seen it on recent Ubuntu, recent RaspOS, and old NetBSD. I wrote
a tiny test (ftp.rodents-montreal.org:/mouse/misc/cursor-bug.c - also
available over HTTP as well, though I'm not sure what Content-Type:
it'll be served as) and people on NetBSD's tech-x11 report it on recent
NetBSD as well, on some, but only some, hardware.
The bug is that creating a pixmap cursor (a CreateCursor request) with
a mask of None typically extends the source pixmap to the right with
server-dependent data (typically background pixels) to a width such as
16 or 32 pixels. See the comment header on the test program for more.
I wrote patches to fix this for two server versions (the ones that
shipped with NetBSD 4.0.1/i386 and 5.2/amd64). I can certainly send
those patches if anyone wants them; they are old, but if that part of
ProcCreateCursor is unchanged since then they might be a useful
starting point (though I do have low-to-negative confidence I got the
code right for other architectures).
/~\ The ASCII Mouse
\ / Ribbon Campaign
X Against HTML
/ \ Email! mouse at mojatatu.com
More information about the xorg
mailing list