dix: Don't track the XKB client versions in the ClientRec

XKB stores some stuff in the ClientRec that, style-wise, should probably
be in a client private.  vMinor tracks the client's idea of the XKB
minor version, but is never read, we can just nuke it.  vMajor is only
used for a bug-compat workaround for X11R6.0-vintage clients.  We're
only using though (1<<4) for xkbClientFlags in the protocol, so we can
pack that field down to a u8 and store the bug-compat flag there.

Signed-off-by: Adam Jackson <ajax@redhat.com>
Reviewed-by: Julien Cristau <jcristau@debian.org>
This commit is contained in:
Adam Jackson 2017-10-24 14:38:13 -04:00
commit c2c6e9e68a
3 changed files with 7 additions and 6 deletions

View file

@ -100,10 +100,9 @@ typedef struct _Client {
CARD32 req_len; /* length of current request */
unsigned int replyBytesRemaining;
PrivateRec *devPrivates;
unsigned short xkbClientFlags;
unsigned short mapNotifyMask;
unsigned short newKeyboardNotifyMask;
unsigned short vMajor, vMinor;
unsigned char xkbClientFlags;
KeyCode minKC, maxKC;
int smart_start_tick;