diff --git a/xkb/xkb.c b/xkb/xkb.c index b5ffc04ebf..97f02d66e3 100644 --- a/xkb/xkb.c +++ b/xkb/xkb.c @@ -6793,12 +6793,20 @@ ProcXkbSetDeviceInfo(ClientPtr client) int ProcXkbSetDebuggingFlags(ClientPtr client) { - CARD32 newFlags, newCtrls, extraLength; - int rc; - REQUEST(xkbSetDebuggingFlagsReq); REQUEST_AT_LEAST_SIZE(xkbSetDebuggingFlagsReq); + if (client->swapped) { + swapl(&stuff->affectFlags); + swapl(&stuff->flags); + swapl(&stuff->affectCtrls); + swapl(&stuff->ctrls); + swaps(&stuff->msgLength); + } + + CARD32 newFlags, newCtrls, extraLength; + int rc; + rc = dixCallServerAccessCallback(client, DixDebugAccess); if (rc != Success) return rc; diff --git a/xkb/xkbSwap.c b/xkb/xkbSwap.c index f624f4cbd5..be085914f7 100644 --- a/xkb/xkbSwap.c +++ b/xkb/xkbSwap.c @@ -209,19 +209,6 @@ SProcXkbSetDeviceInfo(ClientPtr client) return ProcXkbSetDeviceInfo(client); } -static int _X_COLD -SProcXkbSetDebuggingFlags(ClientPtr client) -{ - REQUEST(xkbSetDebuggingFlagsReq); - REQUEST_AT_LEAST_SIZE(xkbSetDebuggingFlagsReq); - swapl(&stuff->affectFlags); - swapl(&stuff->flags); - swapl(&stuff->affectCtrls); - swapl(&stuff->ctrls); - swaps(&stuff->msgLength); - return ProcXkbSetDebuggingFlags(client); -} - int _X_COLD SProcXkbDispatch(ClientPtr client) { @@ -278,7 +265,7 @@ SProcXkbDispatch(ClientPtr client) case X_kbSetDeviceInfo: return SProcXkbSetDeviceInfo(client); case X_kbSetDebuggingFlags: - return SProcXkbSetDebuggingFlags(client); + return ProcXkbSetDebuggingFlags(client); default: return BadRequest; }