diff --git a/xkb/xkb.c b/xkb/xkb.c index c389448e4..b5d601dcb 100644 --- a/xkb/xkb.c +++ b/xkb/xkb.c @@ -1647,7 +1647,7 @@ CheckKeyTypes(ClientPtr client, } n = i + req->firstType; width = wire->numLevels; - if (width < 1) { + if (width < 1 || width > XkbMaxShiftLevel) { *nMapsRtrn = _XkbErrCode3(0x04, n, width); return 0; }