Found and fixed a 20 years old bug in Xserver :)

Enrico Weigelt, metux IT consult info at metux.net
Thu Aug 15 13:40:11 UTC 2024


Hi folks,


if one's digging deeply enough into old code, sometimes suprising things
happen, eg. finding an 20 years old bug, exotic enough that nobody ever
stumpled across it before:

https://gitlab.freedesktop.org/xorg/xserver/-/issues/1741

This is a really strange one: DIX is denying creation of windows with
different depth than the parent has - but *only* under the condition
that the window has no border pixel or pixmap - if you just add a border
pixmap (even with zero border width, or clear it later), you shall pass.

Seriously, I don't have any clue what that really supposed to mean.
Unfortunately, we don't have any explaination in the git history - it
came from a big X11R6.6 snapshot, 20 years ago.

The fix is trivial: just remove the few lines checking for that case.

I've came along this one while porting Xnest to xcb and fixing another
bugs (https://gitlab.freedesktop.org/xorg/xserver/-/issues/1742),
preventing Xnest from using user-specified depth properly - after fixing
this one, got errors from upstream Xserver.

Already pushed MR for the DIX issue, another one for the Xnest issue
following soon.



have fun,

PS: unfortunately, X is a few years younger than me, so I'll never have
the pleasure of finding a bug older than myself in here :o

--
---
Hinweis: unverschlüsselte E-Mails können leicht abgehört und manipuliert
werden ! Für eine vertrauliche Kommunikation senden Sie bitte ihren
GPG/PGP-Schlüssel zu.
---
Enrico Weigelt, metux IT consult
Free software and Linux embedded engineering
info at metux.net -- +49-151-27565287


More information about the xorg-devel mailing list