xkb: XkbWriteKeySyms(): only pass in the needed data

We don't need the whole struct here, especially do we not wanna change it.
Therefore only pass in what's really needed, so it gets easier to understand.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
This commit is contained in:
Enrico Weigelt, metux IT consult 2024-07-15 19:15:11 +02:00
parent 67987d9086
commit c9a5209c5c

View File

@ -1122,7 +1122,7 @@ XkbSizeVirtualMods(XkbDescPtr xkb, xkbGetMapReply * rep)
} }
static char * static char *
XkbWriteKeySyms(XkbDescPtr xkb, xkbGetMapReply * rep, char *buf, XkbWriteKeySyms(XkbDescPtr xkb, KeyCode firstKeySym, CARD8 nKeySyms, char *buf,
ClientPtr client) ClientPtr client)
{ {
register KeySym *pSym; register KeySym *pSym;
@ -1130,8 +1130,8 @@ XkbWriteKeySyms(XkbDescPtr xkb, xkbGetMapReply * rep, char *buf,
xkbSymMapWireDesc *outMap; xkbSymMapWireDesc *outMap;
register unsigned i; register unsigned i;
symMap = &xkb->map->key_sym_map[rep->firstKeySym]; symMap = &xkb->map->key_sym_map[firstKeySym];
for (i = 0; i < rep->nKeySyms; i++, symMap++) { for (i = 0; i < nKeySyms; i++, symMap++) {
outMap = (xkbSymMapWireDesc *) buf; outMap = (xkbSymMapWireDesc *) buf;
outMap->ktIndex[0] = symMap->kt_index[0]; outMap->ktIndex[0] = symMap->kt_index[0];
outMap->ktIndex[1] = symMap->kt_index[1]; outMap->ktIndex[1] = symMap->kt_index[1];
@ -1418,7 +1418,7 @@ XkbSendMap(ClientPtr client, XkbDescPtr xkb, xkbGetMapReply * rep)
if (rep->nTypes > 0) if (rep->nTypes > 0)
desc = XkbWriteKeyTypes(xkb, rep, desc, client); desc = XkbWriteKeyTypes(xkb, rep, desc, client);
if (rep->nKeySyms > 0) if (rep->nKeySyms > 0)
desc = XkbWriteKeySyms(xkb, rep, desc, client); desc = XkbWriteKeySyms(xkb, rep->firstKeySym, rep->nKeySyms, desc, client);
if (rep->nKeyActs > 0) if (rep->nKeyActs > 0)
desc = XkbWriteKeyActions(xkb, rep, desc, client); desc = XkbWriteKeyActions(xkb, rep, desc, client);
if (rep->totalKeyBehaviors > 0) if (rep->totalKeyBehaviors > 0)