From 5342d0c380d996ce51930a48aef8770eec8e3210 Mon Sep 17 00:00:00 2001 From: dec05eba Date: Fri, 20 Jun 2025 01:53:17 +0200 Subject: [PATCH] xkb: fix XkbGetKbdByName returning incorrect data This is a regression first caused by 182404fde6bcacf5e2f05424fde4073c96c2474e that sends back the old xkb data instead of the new one. This causes a mismatch in the data and size calculations between the XkbComputeGetMapReplySize that is called above that calculates the size of the reply and XkbAssembleMap that sets the data for the reply. Without this fix this error is seen when running setxkbmap fr: "Error loading new keyboard description". Fixes setxkbmap error described in #180 Signed-off-by: dec05eba --- xkb/xkb.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/xkb/xkb.c b/xkb/xkb.c index f291600a3..303b5a48e 100644 --- a/xkb/xkb.c +++ b/xkb/xkb.c @@ -6054,7 +6054,7 @@ ProcXkbGetKbdByName(ClientPtr client) if (reported & (XkbGBN_SymbolsMask | XkbGBN_TypesMask)) { char *buf = payload_walk + sizeof(mrep); - XkbAssembleMap(client, xkb, mrep, buf); + XkbAssembleMap(client, new, mrep, buf); if (client->swapped) { swaps(&mrep.sequenceNumber);