• Daniel Stone's avatar
    XKB: Work around broken interps from old xkbcomp · 82f5521a
    Daniel Stone authored
    Bugfix for broken xkbcomp: if we encounter an XFree86Private action with
    Any+AnyOfOrNone(All), then we skip the interp as broken.  Versions of
    xkbcomp below 1.2.2 had a bug where they would interpret a symbol that
    couldn't be found in an interpret as Any.  So, an
    XF86LogWindowTree+AnyOfOrNone(All) interp that triggered the PrWins
    action would make every key without an action trigger PrWins if libX11
    didn't yet know about the XF86LogWindowTree keysym.  None too useful.
    
    We only do this for XFree86 actions, as the current XKB dataset relies
    on Any+AnyOfOrNone(All) -> SetMods for Ctrl in particular.
    
    See xkbcomp commits 2a473b906943ffd807ad81960c47530ee7ae9a60 and
    3caab5aa37decb7b5dc1642a0452efc3e1f5100e for more details.
    Signed-off-by: 's avatarDaniel Stone <daniel@fooishbar.org>
    Acked-by: 's avatarPeter Hutterer <peter.hutterer@who-t.net>
    Signed-off-by: 's avatarPeter Hutterer <peter.hutterer@who-t.net>
    82f5521a
xkb.c 192 KB