Author :
Pierre Le Marre
Date :
2025-04-13 10:25:02
Hash :9e93e5e5 Message :symbols: Restrict the number of actions and keysyms per level
In preparation to support capitalization in `xkb_state_key_get_syms()`,
this commit reduces the number of supported actions and keysyms per
level, going from UINT_MAX to UINT16_MAX. This is most likely still more
than enough and could be even reduced further, but deemed unnecessary
at the moment: alignment of `struct xkb_level` is driven by the fields
`a` and `s`.
- Switched the item count type from `unsigned int` to `uint16_t`.
- Introduced `xkb_{action,keysym}_count_t` type for the respective item
count for exact typing.
- Added relevant bounds checks.