Why X protocol/server forbid zero width/height?

Jim Gettys jg at freedesktop.org
Wed Nov 23 07:00:08 PST 2005


Remember, however, that *downward* compatibility is essential if you
want rapid deployment of applications; so such a fix won't help out
applications anytime soon (they'll still need the checks and work
arounds for old servers).  Servers get updated much less frequently that
applications, and X is a network protocol (people really do run X in
production environments, and don't change out their X server for years,
if ever).

So minor headaches (like this one) are probably *not* worth fixing
(unless you can make a better case, anyway); they just make life harder
to test (in this case, you just added another permutation to test for
your applications).

Sometimes, however, there are things that really can fix problems that
can't be easily avoided in applications/toolkits.  These are getting
added to the XFixes extension.  Examples are regions as first class
resources, fixes for reliable embedding, and the like.  So do complain
about problems of that class.

There is a good paper:

http://www.std.org/~msm/common/protocol.pdf

Why X Is Not Our Ideal Window System
Hania Gajewska
Mark S. Manasse
DEC Systems Research Center

This paper goes over many mistakes we made.  And note, with XFixes, we
are in fact fixing problems where we can.
				- Jim

> 
> X could be modded to eliminate any hard-coded problems, but still be made to
> exhibit the same old behaviour to legacy apps.
> 
> >     What I'm curious about is -- why?  Why is that check at all there?
> 
> Don't know. Perhaps the original designers weren't thinking the api could
> be under algorithmic control, and so decided that a zero size from a programmer
> would be a mistake.
> _______________________________________________
> xorg mailing list
> xorg at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/xorg




More information about the xorg mailing list